目录
abstract
含义:抽象的
可修饰的内容:类,方法
修饰类:
语法: 访问权限修饰符 abstract class 类名 extends 父类名{
}
1.abstract修饰的类是抽象类,抽象类中可以有抽象方法
2.不能直接创建对象
修饰方法:
abstract修饰的方法叫抽象方法,抽象方法没有方法体,抽象方法只能存在于抽象类中
final
含义:最终的
可修饰范围:类,方法,属性,变量
修饰类:
语法: 访问权限修饰符 final class 类名
1.final修饰的类叫做最终类
2.最终类不能被继承
修饰属性:
语法: 访问权限修饰符 final 数据类型 属性名=值;
1.final修饰的属性称为常量
2.final修饰的属性必须在声明时赋值
3.final修饰的属性名要全大写
修饰方法:
语法: 访问权限修饰符 final 返回值类型 方法名(形参列表){
方法体;
}
1.final修饰的方法不能被重写
修饰变量:
语法: final 数据类型 变量名;
1.只能赋值一次,值不能被修改
2.final修饰的变量称之为常量
static
含义:静态的,公共的
修饰范围:内部类,属性,方法,代码块
修饰内部类:以后讲
修饰属性:
语法: 访问权限修饰符 static 数据类型 属性名;
特点:1.属于该类的所有对象共有,一个对象对其修改,该类的其他对象的该属性也被修改 2.可以使用对象名调用,也可以直接使用类名调用
注意:
可以同时使用static和final修饰一个属性
修饰方法:
语法: 访问权限修饰符 static 返回值类型 方法名(形参列表){
方法体;
}
特点:1.静态方法中可以直接使用静态成员(静态方法,静态属性),不能直接使用非静态成员(非静态属性,非静态方法),因此静态方法中不能使用this和super关键字
2.可以使用对象名.方法名调用,也可以使用类名.方法名直接调用
代码块:
静态代码块语法:
定义位置:类中方法外
static{
代码块;
} 特点:
1.静态代码块在类加载时执行,并且只执行一次
实例代码块:
实例代码块也叫构造代码块,这里我们要做一个区分,实例代码块和静态代码块有什么区别,静态代码块上面我们已经介绍了,那么接下来就来介绍实例代码块,实例代码块并不是在类加载时执行的,而是在使用new关键字时执行在构造函数之前,每创建一个对象就会执行一次,根据这种特性,一般我们使用他来记录对象被创建的次数。