亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> java

Java 匿名类

Java 匿名类

在本教程中,您将通过示例了解 Java 中的匿名类。

在Java中,一个类可以包含另一个被称为嵌套类的类。可以在不提供任何名称的情况下创建嵌套类。

没有任何名称的嵌套类称为匿名类。

匿名类必须在另一个类中定义。因此,它也被称为匿名内部类。它的语法是:

class outerClass {

    // defining anonymous class
    object1 = new Type(parameterList) {
         // body of the anonymous class
    };
}

匿名类通常扩展子类或实现接口。

在这里,输入 可以

  1. 匿名类扩展的超类
  2. 匿名类实现的接口

上面的代码创建了一个对象,object1 , 运行时的匿名类。

注意: 匿名类在表达式中定义。所以,分号用在匿名类的末尾,表示表达式的结束。


示例 1:匿名类扩展类

class Polygon {
   public void display() {
      System.out.println("Inside the Polygon class");
   }
}

class AnonymousDemo {
   public void createClass() {

      // creation of anonymous class extending class Polygon
      Polygon p1 = new Polygon() {
         public void display() {
            System.out.println("Inside an anonymous class.");
         }
      };
      p1.display();
   }
}

class Main {
   public static void main(String[] args) {
       AnonymousDemo an = new AnonymousDemo();
       an.createClass();
   }
}

输出

Inside an anonymous class.

在上面的例子中,我们创建了一个类 Polygon .它有一个方法 display() .

然后我们创建了一个扩展类 Polygon 的匿名类 并覆盖 display() 方法。

当我们运行程序时,一个对象 p1 匿名类的创建。然后该对象调用 display() 匿名类的方法。


示例 2:实现接口的匿名类

interface Polygon {
   public void display();
}

class AnonymousDemo {
   public void createClass() {

      // anonymous class implementing interface
      Polygon p1 = new Polygon() {
         public void display() {
            System.out.println("Inside an anonymous class.");
         }
      };
      p1.display();
   }
}

class Main {
   public static void main(String[] args) {
      AnonymousDemo an = new AnonymousDemo();
      an.createClass();
   }
}

输出

Inside an anonymous class.

在上面的例子中,我们创建了一个实现 Polygon 的匿名类 界面。


匿名类的优点

在匿名类中,只要需要,就会创建对象。也就是说,创建对象是为了执行某些特定任务。例如,

Object = new Example() {
   public void display() {
      System.out.println("Anonymous class overrides the method display().");
   }
};

在这里,当我们需要重写 display() 时,会动态创建一个匿名类的对象 方法。

匿名类也帮助我们使代码简洁。


java

  1. Java final 关键字
  2. Java instanceof 运算符
  3. Java 继承
  4. Java 嵌套静态类
  5. Java 单例类
  6. Java 反射
  7. Java ArrayList 类
  8. Java 堆栈类
  9. Java HashSet 类
  10. Java ObjectOutputStream 类
  11. Java 泛型
  12. Java 文件类