类的继承
Java语言每一个类只能继承一个父类。叫做单继承;
extends(继承),
父类的写法;
public class 父类类名 (){
}
子类的写法
public class 子类类名 extends 父类类名;
所有类的构造方法第一行都有一个隐藏的“super();"
作用是在执行该构造方法之前调用其父类构造方法;
子类重写父类的方法;
返回参数相同,方法名相同传入参数相同,只有方法体不同;
例题1
例题2
所有类都可以继承Obfect类;
getClass方法是Object类定义的方法,它会返回对象执行的Class实例。
toString方法的功能是将一个对象放回为字符串类型,它会返回一个String实例。
例题3
例题4
向上转型
子类对象赋值给父类对象
Animal a =new Dog();
自动类型转换
例题5
向下类型转换
父类转子类
Dog a =(Dog)new Animal();
强制类型转换
例题6
重载
方法名相同 参数不同
例题7
例题8
final关键字
final修饰变量-----不可改变的量(常量)。
final修饰方法-----不能被重写。
final修饰的类-----不能被继承。
final修饰变量-----不可改变的量(常量)。
例题9
final修饰方法-----不能被重写。
例题10
final修饰的类-----不能被继承。
例题11
instanceof
对象名 instanceof 类名
判断对象是否属于该类或子类。
例题12
多态
hjx:
利用多态可以使程序具有良好的打展性,并可以对所有类对象进行通用的处理。这种将子类对象视为父类对象的做法称为“向上转型”。假如现在要编写个绘制图形的方法 drawO,如果传入正方形对象就绘制正方形,如果传入圆形对象就绘制圆形,这种场景可以使用重载来实现,定义如下:
public vold draw(Square s){
//绘制正方形的方法
public void draw(Circular cK
//绘制圆形的方法
例题13
抽象类
抽象类 abstract(抽象)
修饰符 abstract 返回参数 方法名 (传入参数);
抽象类 有抽象方法的类一定是抽象类
修饰符 abstract class 类名{
}
如果父类是抽象类,子类是普通类那么重写抽象方法加入方法体。
接口
接口 所有的方法都是抽象方法。
修饰符 interface 接口名{
}
实现 implemenls
java语言每个类可以实现多个接口。
修饰符 class 类名 implemenls 接口1 ,接口2...{
}
对象名 instanceof 接口名
判断对象是否属于该接口实现类。
例题14