
记录曾遇到过的一些疑惑。
小特点
- 单继承父类,多实现接口
文件 与 类 的关系
一个.java文件中可以有很多类。不过注意以下几点:
-
public权限的类最多一个(也可以一个都没有) -
这个
.java文件的文件名必须是public类的类名(如果有的话,另一般的情况下,这里放置main方法是程序的入口。) -
若这个文件中没有
public的类,则文件名随便是一个类的名字即可 -
用
Javac编译这个.java文件的时候,它会给每一个类生成一个.class文件
类成员的访问权限修饰符
| 修饰符 | private | default | protected | public |
|---|---|---|---|---|
| 同一类 | √ | √ | √ | √ |
| 同一包 | – | √ | √ | √ |
| 不同包子类 | – | – | √ | √ |
| 不同包非子类 | – | – | – | √ |
类的访问权限修饰符
外部类
default
同一包中可以访问
public
所有类可以访问
内部类
四种皆可用,内部类作为外部类的成员。
非静态内部类
-
内部类可以访问其外部类中所有的属性和方法,无需创建外部类的对象。
-
必须创建内部类的对象,否则无法从外部类访问内部类的变量和方法。
-
如果内部类中有和外部类同名的变量或方法,则内部类的变量和方法将获 得比外部类的变量和方法更高的优先级。
-
不能定义static变量。
实例化:
1 |
|
静态内部类
-
静态内部类作为外部类的静态成员,不能访问外部类非静态成员。
-
非静态内部类只能定义非静态成员,而静态内部类可以定义静态成员和 非静态成员。
实例化:
1 |
Outer.Inner inn=new Outer.Inner() |




近期评论