final
final是最终修饰符,可以修饰类、成员方法、变量。
final修饰的类无法被继承。
final修饰的方法无法被重写。
final修饰的变量无法被再次赋值,变为了常量。
final修饰的引用数据类型变量,可以修改对象里面的属性内容,不可改变地址值
final修饰的成员变量,不能使用默认值,没有意义,必须在创建对象之前完成赋值。
常量的命名规则 所有字母均大写 多个单词用_连接
static
静态修饰符,被static修饰的内容属于类不专属于某个对象,多个对象共享使用这一个成员
使用static修饰的成员可以用类名直接访问,建议这样使用:
类名.静态方法名(参数);
类名.静态属性名;
静态修饰的成员只能直接访问静态修饰的成员,不能出现this、super,因为类是优于对象产生
static的注意事项
static修饰的成员是随着类的加载而加载,优先于对象存在。
静态只能访问静态,不可以使用this/super
静态常量:static final
局部代码块:限定变量的作用域范围
成员代码块:又叫构造代码块 只要创建对象就会执行
静态代码块:随着类的加载而加载 ,类只加载1次 代码也加载1次
类的加载:创建对象 访问静态成员变量 访问静态方法
静态代码块 >成员代码块>构造方法
内部类的概念
定义在一个类的内部的一个类叫内部类 分为:成员内部类与局部内部类
匿名内部类
是局部内部类的一种
匿名内部类完成两件事:
1:定义了一个类型的匿名子类
2:定义类后,即刻创建了该类对象
目的:为了创建某个类的子类对象
格式:new 父类/接口() {
重写方法
};
包
软件组织文件的基本方式,用于将相同功能的类放到同一个包下,方便管理
在类的最前边使用package定义类所在包,注意:声明的package包必须与这个文件所在的文件夹一致
包的访问:(前提 类用public修饰)
同一个包下,随意访问
不同包下:
可以直接使用全名使用
为了方便,可以选择导包后,再直接使用类名本身,不加包名 在package后,class前使用import导入类
如果是lang包下的类,可以不导包,直接使用
访问权限
在同一个类中 四种权限都可以访问
同一个包下的无关类 只有private 不能访问
不同包下 无关类 只有public可以访问
不同包下子类 默认和private无法访问
Atas ialah kandungan terperinci 面向对象(内部类,static,包,访问修饰符,final). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!