нев Оператор вс невИнстанце() метод у Јави

нев Оператор вс невИнстанце() метод у Јави

У Јави нев је оператор где је невИнстанце() метод где се оба користе за креирање објеката. Ако знамо тип објекта који треба да се креира, онда можемо да користимо нови оператор, али ако не знамо тип објекта који ће бити креиран на почетку и који се прослеђује током извршавања, у том случају се користи метода невИнстанце().
Генерално, оператор нев се користи за креирање објеката, али ако желимо да одлучимо који тип објекта ће бити креиран током извршавања, нема начина да користимо оператор нев. У овом случају морамо да користимо невИнстанце() метода .

Хајде да разговарамо о нови оператер .  У Јави креирање објеката се одвија у 3 корака као што је наведено: инстанцирање објекта и иницијализација објекта и позивање конструктора .

Datatype   variable;    

Пошто ћемо користити нову кључну реч, компајлер тумачи променљиву као објекат

Datatype   object   = new Constructor(); 

Пример:

Java
   // Java Program to Illustrate new Operator   // Importing required classes    import     java.util.*  ;   // Main class   class   GFG     {      // Main drive method      public     static     void     main  (  String  []     args  )      {      // List   al;      // Ny now al is just a variable      // Now creating object using new operator      List   <  Integer  >     al     =     new     ArrayList   <>  ();      // Adding elements to above List      al  .  add  (  1  );      al  .  add  (  4  );      al  .  add  (  3  );      // Printing elements of List      System  .  out  .  print  (  al  );      }   }   

Излаз
[1 4 3] 

Напомена: Можемо га користити и са конструктором где смо желели да позовемо објекат, а не променљиве.

Сада ако дођемо до методе невИнстанце() која је присутна унутар пакета јава.ланг унутар класе Цласс. Као што смо већ расправљали, користи се тамо где учитавамо класу из удаљених извора. 
Размотрите сценарио где се касније повезујемо са базом података користећи наш јава програм за извршење. То се очигледније може објаснити са ЈДБЦ пример. Запамтите да смо тамо користили Цласс.форНаме() метод за динамичко учитавање регистара и тамо смо користили метод невИнстанце() поврх њега да бисмо динамички креирали објекте.  

Пример:

Java
   // Java Program to Demonstrate Working of newInstance()   // Method present inside java.lang.Class   // Class 1   // Class 2   class   A     {      int     a  ;   }   class   B     {      int     b  ;   }   // Class 3   // Main class   public     class   GFG     {      // Method 1      // To create an instance of class whose name is      // passed as a string 'c'.      public     static     void     fun  (  String     c  )      throws     InstantiationException        IllegalAccessException        ClassNotFoundException      {      // Creating an object of type 'c'      Object     obj     =     Class  .  forName  (  c  ).  newInstance  ();      // Printing the type of object created      System  .  out  .  println  (  'Object created for class:'      +     obj  .  getClass  ().  getName  ());      }      // Method 2      // Main driver method      public     static     void     main  (  String  []     args  )      throws     InstantiationException        IllegalAccessException        ClassNotFoundException      {      // Calling above method over 'A'      fun  (  'A'  );      }   }   

Излаз:

нев Оператор вс невИнстанце() метод у Јави

Објашњење излаза: заИме() методом враћа класу ' класа' објекат на који се позивамо невИнстанце() метод који ће вратити објекат те класе који прослеђујемо као аргумент командне линије. 

  • Ако прослеђена класа онда не постоји ЦлассНотФоундЕкцептион десиће се. 
  • ИнстантионЕкцептион ће се десити ако прослеђена класа не садржи подразумевани конструктор као невИнстанце() метода интерно позива подразумевани конструктор те одређене класе.  ИллегалАццессЕкцептион ће се догодити ако немамо приступ дефиницији наведене дефиниције класе.

Повезани чланак: Рефлексија у Јави


Можда Ће Вам Се Свидети