logo

Ieșirea programului Java | Setul 6

Nivel de dificultate: Intermediar

Preziceți rezultatul următoarelor programe Java.

Css alinierea imaginilor

Programul 1: Constructor Chaining



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();  } } 

Ieșire
a b c 

Explicaţie: Când un obiect „Al treilea” este creat înainte de a apela constructorul implicit al Treilea class constructorul implicit al superclasei, adică Doilea clasa este apelată și apoi din nou înaintea constructorului implicit al super-clasei constructorului implicit al Primul se numește clasa. Și, prin urmare, ieșirea este în ordinea a b c.


Programul 2: Inițializarea variabilelor și execuția constructorului

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);  } } 

Ieșire
10 200 400 

Explicaţie: Deoarece în clasa „A doua” nu are propriul „i”, variabila este moștenită din superclasa. De asemenea, constructorul parent este numit atunci când creăm un obiect de Doilea.


Programul 3: instanță cu Iteratoare

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);   }  } 

Ieșire
false true false

Explicaţie: The iterator() metoda returnează un iterator peste elementele din listă în ordinea corectă, nu returnează un obiect List sau ListIterator. O ListIterator poate fi obținut prin invocarea metodei listIterator.

lungimea șirului bash


Programul 4: Excepție de pornire și oprire a firului

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();  } } 

Ieșire:

Run Time Exception  

Explicaţie: Un thread nu poate fi pornit de mai multe ori. Apel început() metoda pe un fir oprit cauze IllegalThreadStateException .