接口、抽象类、抽象方法

来源:互联网 发布:公务员培训老师知乎 编辑:程序博客网 时间:2024/05/16 19:22

接口:

1、接口其实就是若干常量和抽象方法的集合;

2、接口使用 interface 关键字来声明,可以看做是一种特殊的抽象类,可以指定一个类必须做什么,而不是规定它如何去做。

3、接口其实就是“特殊“的抽象类:接口里面的成员变量全是常量,不能再改变它的初始值;且成员变量默认都是 public static final 的,必须显示的初始化,一般省略。

                                                                  接口里面的方法全部都是抽象方法,它需要其它的接口

4、接口其实和类的继承格式一样,接口与之间也可以继承,子接口可以继承父接口中的常量和抽象方法并添加新的抽象方法等。但是可以用类去继承接口并实现那些抽象方法。用关键字implements;

            格式:class 类名 extends 父类 implements 多个接口 {
                               实现方法
                         }

5、接口中没有构造方法,且接口不能被实例化。

6、接口继承接口时,不能实现上一个接口的方法,但是可以继承多个接口,接口的多继承特点弥补了类的单继承。

 

抽象类:

1、抽象的类或者方法用 abstract 修饰符来表示抽象方法和抽象类,抽象类中也包含成员变量,一样的要用abstract修饰。

2、类即使不包含抽象方法,也可以被声明为抽象类,防止被实例化。抽象方法必须在子类中被实现。

3、有抽象方法的类,这个类也必须被抽象化。

注意:a、抽象类不能直接使用,必须用子类去实现抽象类,然后使用其子类的实例。

            b、不能有抽象构造方法或抽象静态方法。

4、当类是一个抽象类的子类,并且不能为任何抽象方法提供任何实现细节或方法主体时;这是的这个类也必须是抽象类。

5、包含抽象方法的类一定是抽象类”就是正确的。反之错误。

abstract class People{}    //抽象类

abstractclassstudents(){}//抽象方法

0 0
原创粉丝点击