JAVA进修之:抽象类与接口

    添加时间:2013-6-19 点击量:

    抽象类与接口



    抽象类(abstract class)


    抽象类是一种特别的类,它具有如下特点:



    1抽象办法只出声明,不包含实现;


    2抽象类不克不及被实例化;


    4抽象类可以有但不是必须有抽象办法,然则一旦有了抽象办法,就必然要把这个类声明为抽象类;


    5除抽象办法外,抽象类还可以包含具体的办法和数据;


    6类即使不含有抽象办法,也可以将类声明为抽象类。




    接口(interface)


    接口首要用来描述类具有什么功能,而不给出具体实现。


    在Java中,接口不是类,而是对类的一组需求描述,这些类(实现接口)要遵从接口描述的同一格局进行定义。


    接口类似抽象类又不合于抽象类



    1不克不及被实例化;


    2只能包含办法声明,不克不及有办法的实现;


    3接口中所有办法默认为public。重视:不克不及将接口的办法声明为private;


    4在接口中可以定义常量,与接口中办法默认为public一样,接口中的常量默认为public static final;


    5一个类可以实现多个接口,一个接口也可以实现其它多个接口;


    6实现接口的类,必须实现该接口(及其父接口)的所有办法。




    抽象类与接口的共同点



    1都不克不及被实例化;


    2都可以被持续;


    3都可以包含办法声明;


    4派生类必须实现为未实现的办法。




    抽象类与接口的不合点



    1抽象类是一个不完全的类,须要进一步细化,而接口只是一个行动规范或规定;


    2抽象类除定义办法声明外,还可以定义办法实现,而接口只能定义办法声明和常量;


    3一个类只能持续一个抽象类,但可以实现多个接口。


    我俩之间有着强烈的吸引力。短短几个小时后,我俩已经明白:我们的心是一个整体的两半,我俩的心灵是孪生兄妹,是知己。她让我感到更有活力,更完美,更幸福。即使她不在我身边,我依然还是感到幸福,因为她总是以这样或者那样的方式出现在我心头。——恩里克·巴里奥斯《爱的文明》
    分享到: