继承(extends),多态,抽象类与接口
一,继承
1,Java语言每个类只能继承一个父类
2,父类 和普通类写法相同
public class 父类类名{
}
3,子类
public class 子类类型 extends 父类类名{
}
例题7.1:
例题7.2:
4,所有类的构造方法第一行都有一个隐藏的" super();"
作用是在执行该构造方法之前调用其父类的构造方法。
二,ob ject 类
1,getClass()的方法:是Object类定义的方法,它会返回对象执行时的Class实例
getClass().getname();
2,toString()方法:将一个对象返回为字符串形式,它会返回一个String实例。
3,方法的重写:
返回参数相同 方法名相同 传入参数相同 方法体
例题7.3:
4,equals方法:有两种比较对象的方式,分别为“==”运算符与equals()方法。
例题7.4代码与结果:
三,对象类型的转换
1,向上转型:子类对象赋值给父类引用 (自动转换)
animal a = new dog();
2,向下转型:父类对象赋值给子类引用(需要进行强制转换)
dog a = (dog) new animal();
例题7.6:
五,方法的重载
重写:(子类—父类) 参数相同 方法名相同 传入参数相同 只有方法体不同
重载:方法名相同,参数不同
例题7.8:
例题7.9:
六,final关键字
1,final修饰变量----不可以被修改(常量)
例题7.10
2,final修饰方法-----不可以被重写
例题7.11
3,final修饰类-----不可以被继承
七,使用instanceof关键字判断对象类型
语法格式:
1,对象名 instanceof 类名
判断对象是否属于该类或子类
例题7.7
八,多态
例题7.12