Home  >  Article  >  Java  >  How to instantiate static inner class using reflection in Java?

How to instantiate static inner class using reflection in Java?

王林
王林forward
2023-08-19 20:41:301214browse

How to instantiate static inner class using reflection in Java?

A static inner class can be instantiated without requiring an instance of the outer class. Generally speaking, inner classes are part of nested classes and are called non-static nested classes in Java. The types of inner classes include member inner classes, anonymous inner classes and local inner classes.

We can use reflection to instantiate a static inner class, using InnerClass.class.newInstance(). If we need an instance of the outer class to instantiate a non-static inner class, we can specify it before the new operator.

Example

import java.lang.reflect.*;
public class InnerclassWithReflectionTest {
   public static void main(String args[]) {
      try {
         InnerClass inner = <strong>(InnerClass) InnerClass.class.newInstance()</strong>;
         inner.test();
      } catch(Exception e) {
         e.printStackTrace();
      }
   }
<strong>   // inner class</strong>
   static class InnerClass {
      public void test() {
         System.out.println("Welcome to TutorialsPoint !!!");
      }
   }
}

Output

Welcome to TutorialsPoint !!!

The above is the detailed content of How to instantiate static inner class using reflection in Java?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete