首页 课程 师资 教程 报名

Java培训机构:java中的内部类和匿名内部类有什么区别

  • 2024-04-21 14:59:21
  • 670次 动力节点

Java中的内部类和匿名内部类是两种特殊的类。

 

内部类是定义在另一个类内部的类,它可以访问包含它的类的私有属性和方法,它还可以继承其他类和实现接口。内部类的访问修饰符可以是public、private、protected或默认,它可以被声明为static或非static,可以访问外部类的成员,也可以访问同一外部类中的其他内部类。内部类通常用于实现某种接口或继承某个类。

 

匿名内部类是一种没有名字的内部类,它通常用于创建实现某个接口或继承某个类的对象,这个对象只使用一次。匿名内部类必须在定义时就创建对象,不能延迟到稍后再创建。它的语法格式为在实例化一个接口或抽象类的对象时,通过“new 接口名/抽象类名()”来定义匿名内部类。

 

举例来说,以下是一个内部类和一个匿名内部类的示例代码:

 

 

在上面的例子中,InnerClass是一个内部类,它可以访问外部类的私有属性x;testInnerClass()方法中创建了一个内部类对象,并调用了printX()方法。testAnonymousInnerClass()方法中创建了一个匿名内部类对象,它实现了Runnable接口的run()方法,并在新线程中打印一条消息。

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交