السلام عليكم
أكمل الكود التالي (بأقل شيء ممكن) لكي يتم تشغيل كائن من Processus باعتباره Thread.
تحياتي.
السلام عليكم
أكمل الكود التالي (بأقل شيء ممكن) لكي يتم تشغيل كائن من Processus باعتباره Thread.
تحياتي.
C++ and Java, say, are presumably growing faster than plain C, but I bet C will still be around. ― Dennis Ritchie
~OoO~________--------------------------------------------________~OoO~
من مواضيعي :
public class LancerProcessus {
public static void main(String[] args) {
Thread t = new Thread(new Processus());
t.start();
}
}إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة
فما أحوجني إلى دعوة صالحة من أخ لي كريم
أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز
اوافق جواب الاخ احمد لكن اعتقد انو لازم اضافة مكتبة Thread
هل يمكن تغيير مكان JApplet بThread
يا عزيزي .. هل نسيت أن الفئة ترث JApplet ؟ + لا وجود للدالة main :)
C++ and Java, say, are presumably growing faster than plain C, but I bet C will still be around. ― Dennis Ritchie
~OoO~________--------------------------------------------________~OoO~
من مواضيعي :
للاسف ليس لدي اي فكرة عن JApplet ولا الـ Thread
م زلت في بدايات الـ object-oriented programming
دمت في حفظ الله
غفر الله لك أخي ...وهل هذا سؤال للمبتدئين ؟ :) "هذا ما يتواسى"
على كل حال أنا كنت قد اطلعت منذ زمن على الأبلات ولكني لم أعرها اهتمامي إذ كان توجهي تطبيقات سطح المكتب ولكن بفضلك راجعت هذا الفصل من الجافا وأضفت إليه معرفتي وخلصت بهذا الكود
public class Applet extends JApplet implements Runnable{
@Override
public void run() {
}
@Override
public void inti(){
run();
}
}وفي داخل الدالة run نضع الكود
تم تعديل هذه المشاركة بواسطة أحمد أبو عبد البر في 10 يونيو 2013 في 23:13
إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة
فما أحوجني إلى دعوة صالحة من أخ لي كريم
أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز
ثم التجأت إلى netbeans فصنع هذا الكود تلقائيا
package test;
public class Aform extends javax.swing.JApplet {
@Override
public void init() {
try {
java.awt.EventQueue.invokeAndWait(new Runnable() {
public void run() {
initComponents();
}
});
} catch (Exception ex) {
ex.printStackTrace();
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jButton1 = new javax.swing.JButton();
jButton1.setText("jButton1");
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(146, 146, 146)
.addComponent(jButton1)
.addContainerGap(160, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(205, Short.MAX_VALUE)
.addComponent(jButton1)
.addGap(70, 70, 70))
);
}// </editor-fold>
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
// End of variables declaration
}ولكن شيئا واحدا لم أفهمه وهو أننا نعرف أن interface لا يمكن إنشاء كائن منها فكيف صحت هذه العبارة new runnable
إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة
فما أحوجني إلى دعوة صالحة من أخ لي كريم
أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز
حسنا يبدو أنني سأتوقف عند الحلقة الثالثة للأسف.
الحل بسيط جدا لمن درس الــ Applet و الــ Thread :
import javax.swing.JApplet;
public class Processus extends JApplet implements Runnable {
@Override
public void start() {
Thread th = new Thread(this);
th.start();
}
@Override
public void init() {
}
@Override
public void run() {
System.out.println("OK !");
}
}
تحياتي.
تم تعديل هذه المشاركة بواسطة Sn@CkeR في 11 يونيو 2013 في 16:24
C++ and Java, say, are presumably growing faster than plain C, but I bet C will still be around. ― Dennis Ritchie
~OoO~________--------------------------------------------________~OoO~
من مواضيعي :
اقتباسحسنا يبدو أنني سأتوقف عند الحلقة الثالثة للأسف.
لماذا طالما نحن نستفيد ؟
+
الكود الذي كتبته أنا كان أقل أسطرا ..فهل كان فيه من خطأ
أنا جربته وكانت النتيجة صحيحة
هكذا
import javax.swing.JApplet;
public class Applet extends JApplet implements Runnable{
@Override
public void run() {
System.out.println("OK !");
}
@Override
public void start(){
run();
}
}إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة
فما أحوجني إلى دعوة صالحة من أخ لي كريم
أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز
اقتباسولكن شيئا واحدا لم أفهمه وهو أننا نعرف أن interface لا يمكن إنشاء كائن منها فكيف صحت هذه العبارة new runnable
ال interface هو مجرد طريقة لاجبار المطور على اعادة كتابة الدوال Override
مثله مثل pure virtual functions فى ++C
يمكنك انشاء كائن منه بشرط ان تقوم باعادة كتابة الدوال
انظر المثال التالى
TestInterface.java
package pkginterface;
/**
*
* @author Mohamed
*/
public interface TestInterface {
public void print();
}
Main.java
package pkginterface;
/**
*
* @author 11
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
TestInterface intf = new TestInterface() {
@Override
public void print() {
System.out.println("Overridden");
}
};
printName(intf);
}
public static void printName(TestInterface inf)
{
inf.print();
}
هنا أجبرنا المطور على استخدام كائن من النوع TestInterface او ينشئ فئة تدعم هذه الواجهة
والا لن يستطيع استخدام الدالة printName
تم تعديل هذه المشاركة بواسطة MOHAMED FATHEI في 12 يونيو 2013 في 15:59
﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾
الأنفال ۳۳
اقتباسيمكنك انشاء كائن منه بشرط ان تقوم باعادة كتابة الدوال
شكرا لك أخي ...هذا فصل المسألة ووضحها
قد كنت من قبل تلقيت دروسا عن الأخ عيد عبد الله وقد كان يؤكد على مسألة أن الأنترفاس لا ينشأ منه كائن بالعبارة new ولعلي لم أفهم قصده حتى وضحته أنت (+1)
إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة
فما أحوجني إلى دعوة صالحة من أخ لي كريم
أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز
اقتباس
قد كنت من قبل تلقيت دروسا عن الأخ عيد عبد الله وقد كان يؤكد على مسألة أن الأنترفاس لا ينشأ منه كائن بالعبارة new ولعلي لم أفهم قصده حتى وضحته أنت (+1)
لعلها مرت عليه سهوا :)
تحياتى
﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾
الأنفال ۳۳