第四章:声明类
(1)源文件声明规则
1.每个源代码文件只能有一个public类
2.注释可以出现在源代码文件任一行的开始或结尾处。
3.如果文件中有一个public类,那么文件名必须与public类的名称匹配。
4.如果类是包的一部分,那么package语句必须位于源代码文件的的第一行。
5.如果有import语句,则它们位于package语句(如果有)和类声明之间;如果没有package语句,那么import语句必须位于源代码文件中的第一行或最前的几行;如果没有package语句或import语句,那么类声明必须位于源代码文件的第一行。
6.import语句和package语句适用于源代码文件 中的所有类。
7.一个文件可以具有多个非公共类。
8.不包含公共类的文件可以具有与该文件中的任何类都不匹配的名称。
(2)类声明和修饰符
修饰符总共分为两类:
访问修饰符:public.protected和private
public:
1.可以被任何类访问
protected:
1.可以被同一包中的所有类访问
2.可以被所有子类访问
3.子类没有在同一包中也可以访问
private:
1.只能够被当前类的方法访问
default:
1.无访问修饰符
2.可以被同一包中的所有类访问
3.如果子类没有在同一个包中,也不能访问
非访问修饰符(包括strictfp,final和abstract)
(3)类访问
类访问意味着可以用类A对另一个类B进行一下三种操作:
1.创建类B的一个实例(Instance)
2.扩展(extend)类B,即A继承B
3.访问(access)类:访问B中的某些方法和变量
默认访问:default类型的类在声明时前面没有任何修饰符,它在类声明中不键入修饰符时所得到的访问控制。
公共访问:public关键字声明的类可以为来自所有包的类提供对公共类的访问。
其他(非访问)类修饰符:可以使用关键字final,abstract或strictfp修饰类声明,这些修饰能够加在所有类访问控制上。
最终(final)类:用于此类声明时,final关键字所指此类不能再被继承。
抽象(abstract)类:abstract类永远不能被实例化,其被用在子类化(即接口上)。