一、this --> 执行当前正在执行这段代码的【对象】
成员变量|方法: this.
呼叫本类的构造方法: this()
二、super --> 只能用于呼叫父类的属性或方法,不能单独使用
父类的成员变量|方法: super.
呼叫父类的构造方法: super()
三、static: 与类绑定,用类名打点调用
修饰成员变量 --> 静态变量
修饰局部变量 ×
修饰方法--> 静态方法: 只能直接使用静态资源
修饰域--> 静态域:优先加载,只加载一次
修饰类 --> 静态内部类(嵌套类)
修饰import --> 静态导包
import static java.util.Arrays.*;//将Arrays中所有的静态方法导入到本类
sort();//直接使用方法名调用,无需再加Arrays
四、多态
表现形式
1.父类对象 = 子类实例
调用被子类重写的方法
梅兰芳 fang = new 梅葆玖();
fang.唱贵妃醉酒();
2. 将父类类型作为方法参数,调用子类重写的方法
void feed(AbsPet pet){
pet.eat();
}
3. 将父类类型作为方法返回值: 简单工厂模式
public XXXFactory{
public static 父类类型 createInstance(){
return new XXX();
}
}
简单工厂模式解决集中管理对象实例化的问题
五、abstract关键字
修饰方法 --> 抽象方法:没有方法体
修饰类 --> 抽象类: 不能被实例化
包含抽象方法的类一定是抽象类 √
抽象类中一定有抽象方法 ×
六、final关键字:
修饰变量 --> 常量(只能赋值一次)
tips: 内部类中使用的局部变量必须final
修饰方法 --> 不能被重写
修饰类 --> 不能被继承(太监类)
七、接口
定义接口: interface
public interface 接口名{
public static final 静态常量;
public abstract 抽象方法;
}
接口的成员只能是public
使用接口: implements
类 implements 接口:
public class 实现类 extends 父类 implements 接口1,接口2{}
接口 extends 接口
public interfalce 接口 extends 接口1,接口2{}
为什么用接口:弥补类继承的单根型
八、枚举: enum
public enum 枚举名{
//枚举的实例
枚举值1(1),枚举值2(2),枚举值3(3),...;
//成员属性
//成员方法
//构造方法只能私有
private 枚举名(int value){
}
}
哪些成员不能被继承:private static
哪些方法不能被重写:private static final
属性和静态资源看左边
非静态方法看右边