JAVA- 内部类及匿名内部类

普通类,我们平时见到的那种类,就是一个后缀为.java的文件中,直接定义的类,比如

public Cat{
  private String name;
  private int age;
}

内部类,

内部类。顾名思义,就是包含在外部类中的类,就叫内部类。内部类有两种,一种是静态内部类,一种是非静态内部类。

静态内部类和非静态内部类的区别主要如下:

1、内部原理的区别:

静态内部类是属于外部类的成员, 是一种静态的成员,是属于类的,就有点类似于private static Singleton instance = null; 

非静态内部类,是属于外部类的实例对象的一个实例成员,也就是说,每个非静态内部类, 不是属于外部类的,是属于外部类的第一个实例的,创建非静态内部类的实例以后,非静态内部类实例,是必须跟一个外部类的实例进行关联和有寄存关系的。

2、创建方式的区别

猜你喜欢

转载自www.cnblogs.com/RzCong/p/11141418.html