Java面向对象的三大特性 多态

时间:2022-01-11 21:13:32

Java面向对象的三大特性 多态多态

对象的多种形态 继承是实现多态的基础
1,引用多态
   父类的引用可以指向本类的对象
   父类的引用可以指向子类的对象
2,方法多态
   创建本类对象时,调用的方法为本类方法
   创建子类对象时,调用的方法为子类重写的方法或者继承的方法
引用类型转换
1,向上类型转换(隐式,自动类型转换),是小类型到大类型的转换
2,向下类型转换(强制类型转换),是大类型到小类型的转换
就像茶杯和茶壶的关系一样
使用instanceof运算符,避免类型转换的安全性
1 //属于向上类型转换,是安全的
2 Animal animal = new Dog()
3 if(animal instanceof Cat)
4     Cat cat=(Cat)animal;
5 else
6     System.out.println("无法进行类型转换");
  • 什么是抽象类?
    • 包含抽象方法的类是抽象类
    • 抽象类中可以包含普通的方法,也可以没有抽象方法
    • 抽象类不能直接创建,可以定义引用变量
    • 抽象方法没有函数体,以分号结束
    • public abstract class Telephone{ public abstract sendMessage();}
  • 什么是接口?
    • 接口可以理解为一种特殊的类,由全局常量和公共的抽象方法所组成
    • interface前面若没有abstract,则系统会自动加上
    • 接口的修饰符一般使用public, 不能使用protected和private来修饰
    • 接口中的属性是常量,即使定义时不添加,系统会自动加上public static final
    • 接口中的方法只能是抽象方法,即使定义时不添加,系统会自动加上public abstract
    • 注意在接口命名的时候,可以在类名前面加上一个I,表示这是接口
    • 接口的引用可以直接指向实现接口的类的对象