logo

Java programos išvestis | 8 rinkinys

Sunkumo lygis : Vidutinis
Numatykite šių „Java“ programų išvestį.
1 programa:
 

Java
class GfG {  public static void main(String args[])  {  String s1 = new String('geeksforgeeks');  String s2 = new String('geeksforgeeks');  if (s1 == s2)   System.out.println('Equal');  else  System.out.println('Not equal');  } } 

Išvestis: 
 

Not equal


Paaiškinimas: Kadangi s1 ir s2 yra du skirtingi objektai, nuorodos nėra vienodos, o operatorius == lygina objekto nuorodą. Taigi jis išspausdina „Nelygus“, kad palygintų tikruosius simbolius eilutėje Turi būti naudojamas .equals() metodas. 
 
2 programa:  
 



Java
class Person  {   private void who()  {  System.out.println('Inside private method Person(who)');  }    public static void whoAmI()  {  System.out.println('Inside static method Person(whoAmI)');  }    public void whoAreYou()  {  who();  System.out.println('Inside virtual method Person(whoAreYou)');  } } class Kid extends Person {   private void who()  {  System.out.println('Kid(who)');  }    public static void whoAmI()  {  System.out.println('Kid(whoAmI)');  }    public void whoAreYou()  {  who();  System.out.println('Kid(whoAreYou)');  } } public class Gfg {  public static void main(String args[])   {  Person p = new Kid();   p.whoAmI();   p.whoAreYou();   } } 

Išvestis: 
 

Inside static method Person(whoAmI) Kid(who) Kid(whoAreYou)


Paaiškinimas: Statinis susiejimas (arba kompiliavimo laikas) vyksta statiniams metodams. Čia p.whoAmI() iškviečia statinį metodą, todėl jis iškviečiamas kompiliavimo metu, todėl atsiranda statinis susiejimas ir spausdinamas metodas Asmens klasėje. 
kadangi p. kas tu() iškviečia metodą Vaikinas klasė, nes pagal numatytuosius nustatymus „Java“ jį laiko virtualiu metodu, ty dinaminiu įrišimu.
 
3 programa:  
 

Java
class GfG {  public static void main(String args[])  {  try  {  System.out.println('First statement of try block');  int num=45/3;  System.out.println(num);  }  catch(Exception e)  {  System.out.println('Gfg caught Exception');  }  finally  {  System.out.println('finally block');  }  System.out.println('Main method');  } } 

Išvestis: 
 

First statement of try block 15 finally block Main method


Paaiškinimas:  
Kadangi nėra išimtis, gaudymo blokas vadinamas ne, o vadinamas pagaliau blokas visada vykdomas po bandymo bloko, nesvarbu, ar išimtis tvarkoma, ar ne.
  
4 programa:  
 

Java
class One implements Runnable  {  public void run()   {  System.out.print(Thread.currentThread().getName());  } } class Two implements Runnable  {  public void run()   {  new One().run();  new Thread(new One()'gfg2').run();  new Thread(new One()'gfg3').start();  } } class Three  {  public static void main (String[] args)   {  new Thread(new Two()'gfg1').start();  } } 

Išvestis: 
 

gfg1gfg1gfg3


Paaiškinimas: Iš pradžių nauja tema pradedama pavadinimu gfg1 tada Antroje klasėje pirmojo paleidimo metodas paleidžia giją su pavadinimu gfg1 tada po to sukuriama nauja gija, kuri iškviečia paleisties metodą, bet kadangi naują giją galima sukurti tik iškviečiant pradžios metodą, ankstesnė gija atlieka veiksmą ir vėl gfg1 spausdinama. Dabar nauja gija sukuriama iškviečiant pradžios metodą, kad nauja gija prasidėtų gfg3 pavadinimas, taigi ir atspaudai gfg3 .
 

eilutę į json objektą