您的位置:首页 > 编程语言 > Java开发

JAVA笔记:接口

2013-09-17 15:41 267 查看
接口定义:

        【修饰符】 interface 接口名 extends 父接口1,父接口2....

         {

           成员变量定义;

          方法定义;

         }

        【修饰符】:因为上一级的访问单元为包,所以修饰符为public、默认(包访问权限)

        【接口名】:因为接口为特色的类,所有命名规则与类名一直,单词首字母写。

        【继承性】:只能够继承接口

        【成员变量】:默认的修饰符为 public static final ,也就是常用

        【方法】:默认的修饰符为 public abstract 抽象方法

a.一般概念

        类是在对象层次上进行抽象。

        接口是在类层次上进行抽象,多个类中抽象出行为的模板,不关心这些类的内部状态数据,也不关心这些类里的方法具体实现细节,只规定这些类里必须提供哪些方法。

        接口的设计:规范和实现的分离的设计哲学,面向接口的耦合设计是一种松耦合。

        例子:

                 接口定义:买票(不同类型的行为抽象,在不同类型对象之间建立联系);

                 类定义: 电影票(阿凡达电影票具体的对象),支持银联支付买票(不同的实现)

                                 汽车票(杭州汽车票具体的对象),支持支付宝支付买票(不同的实现)

                                   

 实现接口定义

          【修饰符】 class 类名 extends 父类 implements 接口1,接口2...

           {

              实现接口的方法;

            }           

接口定义的多态性: 

              接口类型 变量 = 实现类;

              变量.方法名();

              编译时期变量的类型为接口类型,运行时期变量的类型为实现类类型,所有执行变量.方法名()根据运行时期的类型来决定执行代码的结构,增加代码的灵活性。 

接口与抽象类区分:

      1、相同点

             a.不能被实例化

             b.子类与实现类必须实现抽象类或接口的抽象方法

       2、不同点

            a.接口只能够包含抽象方法,抽象类可以包含普通方法

            b.接口不能定义静态方法,抽象类可以

            c.接口只能定义静态常量,不能够定义普通成员,抽象类可以

            d.接口不能包含构造方法和初始化块,抽象类可以只不过让子类来调用而已。 

案例参考《JAVA疯狂讲义》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java笔记