一.抽象类的定义
在面向对象中,所有的对象可以通过类来创建。反过来说,并不是所有的类都可以创建对象的。如果一个类中没有足够完整的信息来描述具体的对象的话,那么这个类叫抽象类。
在这里有个关键字abstract,被abstract修饰的类叫抽象类,语法格式如下:
abstract 类名 {
抽象方法;
普通方法;
}
被abstract修饰的方法叫抽象方法,而abstract只能修饰类和方法。
二.抽象类的注意事项
1.抽象类需要被abstract修饰。
2.抽象类中可以有普通成员方法和抽象方法。
3.抽象方法没有方法体,格式:public abstract void 方法名();
4.抽象类不能被实例化,所以需要一个普通的类去继承抽象类,
重写抽象类中的抽象方法。
5.非抽象方法可以重写也可以不重写。
6.抽象类可以继承另一个抽象类。
7.抽象类可以继承非抽象类。
三.接口
接口主要起到一个扩展的功能。
语法格式:
interface 接口名 {
抽象方法
}
四.接口的注意事项
1.声明接口需要使用interface。
2.接口面可以有属性,但是是static 和final修饰的属性。被称为常量。几乎不用。
3.接口下面全部抽象的方法。
4.jdk1.8以后是可以有默认(default)的方法的,这个默认方法带有方法体。
5.接口下面没有构造方法,不能被实例化,所以需要一个类去实现接口,
使用关键字implements。
6一定要在实现类中去实现所有的抽象方法。
7.一个普通的类可以实现多个接口,弥补了单继承的局限性。
8.一个接口可以去继承另外一个接口 extends。