内部类
this可以调用奔雷中的其他构造方法,但是要求至少有一个
构造方法没有使用this(),而且调用时候this()要放在
构造方法的首行。
static可以声明为全局变量,所有对象共同拥有。
构造方法私有化,术语单例设计,一个类只能产生一个实例
化对象。如果将构造方法私有化之后,外部将无法产生新的
实例化对象。
静态块每次只执行一次优先于主方法执行。
内部类结构混乱,优点是可以方便的访问外部类的私有成员
,如果在外面使用内部类的话,首先实例化外部类,在实例
化内部类。如果内部类使用static修饰,则变成外部类,可
以通过外部类.内部类的形式访问。
在方法中定义的内部类,可以直接访问外部类的各个成员,
但是如果要访问本方法中的参数,就必须在参数使用final关
键字声明public void fun(final int temp)。
-------静态内部类------
1)首先,用内部类是因为内部类与所在外部类有一定的关系
,往往只有该外部类调用此内部类。所以没有必要专门用一
个Java文件存放这个类。
2)静态都是用来修饰类的内部成员的。比如静态方法,静态
成员变量,静态常量。它唯一的作用就是随着类的加载(而
不是随着对象的产生)而产生,以致可以用类名+静态成员名
直接获得。
这样静态内部类就可以理解了,因为这个类没有必要单独存
放一个文件,它一般来说只被所在外部类使用。并且它可以
直接被用 外部类名+内部类名 获得。
---------------
几种内部类的共性:
译成独立的.class文件,但是前面冠以外部类的类命和$符号
。
B、内部类不能用普通的方式访问。内部类是外部类的一个成
员,因此内部类可以自由地访问外部类的成员变量,无论是
否是private的。 ...
构造方法没有使用this(),而且调用时候this()要放在
构造方法的首行。
static可以声明为全局变量,所有对象共同拥有。
构造方法私有化,术语单例设计,一个类只能产生一个实例
化对象。如果将构造方法私有化之后,外部将无法产生新的
实例化对象。
静态块每次只执行一次优先于主方法执行。
内部类结构混乱,优点是可以方便的访问外部类的私有成员
,如果在外面使用内部类的话,首先实例化外部类,在实例
化内部类。如果内部类使用static修饰,则变成外部类,可
以通过外部类.内部类的形式访问。
在方法中定义的内部类,可以直接访问外部类的各个成员,
但是如果要访问本方法中的参数,就必须在参数使用final关
键字声明public void fun(final int temp)。
-------静态内部类------
1)首先,用内部类是因为内部类与所在外部类有一定的关系
,往往只有该外部类调用此内部类。所以没有必要专门用一
个Java文件存放这个类。
2)静态都是用来修饰类的内部成员的。比如静态方法,静态
成员变量,静态常量。它唯一的作用就是随着类的加载(而
不是随着对象的产生)而产生,以致可以用类名+静态成员名
直接获得。
这样静态内部类就可以理解了,因为这个类没有必要单独存
放一个文件,它一般来说只被所在外部类使用。并且它可以
直接被用 外部类名+内部类名 获得。
---------------
几种内部类的共性:
A、内部类仍然是一个独立的类,在编译之后会内部类会被编
译成独立的.class文件,但是前面冠以外部类的类命和$符号
。
B、内部类不能用普通的方式访问。内部类是外部类的一个成
员,因此内部类可以自由地访问外部类的成员变量,无论是
否是private的。 ...
------------------
内部类 可以看成一个外部类的方法 或成员属性 直接外部类方法名就OK了 直接 方法(); 或者 外部类名称.this.方法()外部类可以直接调用内部类的方法