1.方法重写的特点;特点是1,不在同一个类 2.方法名 参数列表相同 3.重写返回值类型和被返回值类型相同 4.修饰符不可以是private
2.2.object是所以类的祖宗类,简单的说是所有类的父类
object含有多种方法体,比如tostring();它已经被object重写,打印出来的是它本身字符串的内容返回当前对象
3.equals比较两个对象是否为同一个对象,它的表达式是==,比较是两个变量名的内存地址
4.instanceof判断一个引用数据类型的对象是否一个类的实列,要满足两个对象是继承关系,列如宠物父类Pet 子类Dog Dog extands Pet if(Pet instanceof Dog)
5..abstract抽象修饰符;抽象类;实列抽象类毫无意义
被abstract修饰的方法没有方法体,必须存在于抽象类中,方法被子类重写实现
抽象方法必须存在于抽象类中,而抽象类中也可以存在普通方法类
6.向上转型;类名类型 类型变量名=new 子类类型();
Pet pet=new Dog();
向下转型;子类类型 类型变量名=(子类型 )父类型引用变量;
强制类型转换 Dog dog=(Dog)Pet;
7.多态作用;节约代码,可缩性强 可替换性 可继承性 可扩充性 接口性 灵活性
使用父类作为返回值的方法是Java中实现多态的主要方式
public Pet sendAnimal(String type){
if(type.equals("Dog")) return new Dog();}
使用父类作为形参的方法是Java中实现多态的主要方式
public Host(){
public void sendAnimal(Pet pet){
Pet.父类的方法(); 方法重写; 子类的方法覆盖父类的方法
}
}
public Text(){
Hose host=new Host();
Pet pet=new Dog();
pet.方法名();
}