إخراج برنامج جافا | مجموعة 6

مستوى الصعوبة: متوسط

توقع مخرجات برامج Java التالية.

البرنامج 1: تسلسل المنشئ

Java
   class   First   {      public     First  ()     {         System  .  out  .  println  (  'a'  );         }   }       class   Second     extends     First   {      public     Second  ()     {         System  .  out  .  println  (  'b'  );         }   }       class   Third     extends     Second   {      public     Third  ()     {         System  .  out  .  println  (  'c'  );         }   }       public     class   MainClass   {      public     static     void     main  (  String  []     args  )      {      Third     c     =     new     Third  ();      }   }   

الإخراج
a b c  

توضيح: عند إنشاء كائن "ثالث" قبل استدعاء المُنشئ الافتراضي لـ ثالث فئة المنشئ الافتراضي للفئة الفائقة أي. ثانية يتم استدعاء الفئة ثم مرة أخرى قبل المُنشئ الافتراضي للمُنشئ الافتراضي للفئة الفائقة أولاً يسمى الفصل . ومن ثم يكون الناتج بالترتيب أ ب ج.


البرنامج 2: التهيئة المتغيرة وتنفيذ المنشئ

Java
   class   First   {      int     i     =     10  ;          public     First  (  int     j  )      {      System  .  out  .  println  (  i  );         this  .  i     =     j     *     10  ;      }   }       class   Second     extends     First   {      public     Second  (  int     j  )      {      super  (  j  );         System  .  out  .  println  (  i  );         this  .  i     =     j     *     20  ;      }   }       public     class   MainClass   {      public     static     void     main  (  String  []     args  )      {      Second     n     =     new     Second  (  20  );         System  .  out  .  println  (  n  .  i  );      }   }   

الإخراج
10 200 400  

توضيح: نظرًا لأنه في الفئة "الثانية" لا يحتوي على "i" الخاص به، فقد تم توريث المتغير من الفئة الفائقة. يتم أيضًا استدعاء مُنشئ الأصل عندما نقوم بإنشاء كائن ثانية.


البرنامج 3: مثيل مع التكرارات

Java
   import     java.util.*  ;      class   Geeks      {      public     static     void     main     (  String  []     args  )         {      Object     i     =     new     ArrayList  ().  iterator  ();         System  .  out  .  print  ((  i     instanceof     List  )     +     ' '  );         System  .  out  .  print  ((  i     instanceof     Iterator  )     +     ' '  );         System  .  out  .  print  (  i     instanceof     ListIterator  );         }      }   

الإخراج
false true false 

توضيح: ال مكرر () ترجع الطريقة مكررًا فوق العناصر الموجودة في القائمة بالتسلسل الصحيح ولا تُرجع قائمة أو كائن ListIterator. أ ListIterator يمكن الحصول عليها عن طريق استدعاء طريقة listIterator.


البرنامج 4: بدء الخيط وإيقاف الاستثناء

Java
   class   ThreadEx     extends     Thread   {      public     void     run  ()      {      System  .  out  .  print  (  'Hello...'  );      }      public     static     void     main  (  String     args  []  )      {      ThreadEx     T1     =     new     ThreadEx  ();      T1  .  start  ();      T1  .  stop  ();      T1  .  start  ();      }   }   

الإخراج:

 Run Time Exception   

توضيح: لا يمكن بدء الموضوع أكثر من مرة. الاتصال يبدأ() الأسلوب على أسباب موضوع توقف IllegalThreadStateException .