权限修饰符的分类
代码块
局部代码块
public class test{
public static void main(String[] args){
int a=10;
System.out.println(a);
}
}
{
int a=10;
System.out.println(a);
}即是局部代码块
构造代码块
构造代码块优先于构造方法执行
静态代码块
格式:static[]
特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发,只执行一次
在类加载的时候,做一些数据初始化的时候使用
例如:上面图片中代码块修改为
static{
System.out.println("静态代码块开始执行了");
}
多次调用构造方式会执行一次
抽象类和抽象方法
抽象方法:将共性的行为抽取到父类后,每个子类执行的内容是不一样的,父类不能确定具体的方法体,这种方法可以定义为抽象方法(可强制子类重写)
抽象类:类中存在抽象方法,那么该类必须声明为抽象类
抽象方法的定义格式:
public abstract 返回值类型 方法名(参数列表);
抽象类的定义格式:public abstract class 类名{}
抽象类和抽象方法的注意事项
抽象类不能实例化(不能创建对象)
抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类
可以有构造方法
抽象类的子类:要么重写抽象类中的所有抽象方法,要么是抽象类