2023.0213 星期一
1 修饰符 abstract 抽象
1.1 abstract可以修饰2个位置
abstract可以修饰2个位置。
1 方法 抽象方法
2 类 抽象类
1.2 抽象方法
抽象方法是一个没有方法体的方法。只有方法的原型。
实例方法:
public void print(int i){
sout(i);
}
抽象方法:
1 使用abstract修饰
2 没有方法体,只有原型。
public abstract void print(int i);
我们认为抽象方法是一个没有写完的方法。就不可以执行。
抽象方法一定需要被重写。
1.3 抽象类
一个被abstract修饰符修饰的类就是一个抽象类。
public abstract class A{
}
有抽象方法的类,必须是一个抽象类。
我们认为抽象类是一个没有完成的类。就不可以被实例。
抽象类一定要被继承。
1.4 抽象类与抽象方法的使用方法
抽象类要继承。
抽象方法要重写。
public abstract class A {
public void print(){
}
public static void dis(){
}
public abstract void info();
}
public class B extends A{
@Override
public void info() {
}
2 abstract的使用场景
面向对象语言最核心的特性是:多态。
父类 引用 = new 子类();
这个引用可以调用的方法是:
1 父类的方法
2 子类重写方法
都是在父类中声明的。
条件1:多态时方法必须在父类中声明。
条件2:父类没有方法的实现。
因为很多父类本身就是一个抽象的概念。
三角形,矩形,圆形都是具体的实例。
图形父类就是一个抽象的概念。
3 访问修饰符
在Java中一共有四个访问级别。但只有三个访问修饰符关键字。
级别 关键字 本类 同包的其他类 不同包的子类 不同包的非子类
公有 public y y y y
保护 protectd y y y
默认 (default) y y
私有 private y
4 枚举(关键字enum)
4.1 什么是枚举
枚举也是一种特殊的数据类型。
枚举也是一种特殊的类。
枚举就是一个有固定实例数量的类。
例如:计算机三原色RGB。交通信号灯颜色。季节。月份。
4.2 枚举的定义格式
public enum RGB {
RED,GREEN,BLUE