java java面向对象-接口的定义和接口的成员

20180402 java java面向对象-接口的定义和接口的成员


java中的接口是比抽象更抽象的类。




公认的说法:多个抽象类的抽象就是接口。


通俗的理解:在java中最小的程序单元就是类,接口就是特殊的类。java中的接口表示规范,用于定义一组抽象方法,表示某一类事物必须具备的功能 ,要求实现类必须来实现该接口并提供方法实现。








定义类的语法:  [public] class       类名[]


定义接口的语法  [public] Interface 接口名[]


接口起名的问题:表示具有某些能力的有人习惯以able/handler结尾,eg:walkable,表示可行走的;有些公司习惯以i大头,表示接口,如 iWalkable.java






eg:


//定义接口










接口里都有啥呢?
答:
1、接口中没有构造器,所以接口不能创建对象(不能 new);




2、接口中可以定义成员变量,接口中定义的成员变量实质是全局静态常量,即:




String NAME = "ad";  ---------------> public static final String NAME = "ad";
                     反编译工具查看      


3、接口中可以定义方法,且接口中定义的方法都是公共的抽象方法。即:


void walk();  ---------------> public abstract void walk();
              反编译工具查看   


一般的我们不必在接口定义 方法前使用public修饰,因为 反编译后,都会在方法前加public修饰符。


4、可以定义接口,且接口中定义的内部接口 都默认使用public static修饰。




5、接口中定义普通方法是不行的,eg:
void walk(){};//编译不通过




常量接口的定义:有人喜欢使用接口来封装多个常量信息,我们称之为常量接口。其目的和常量类相同。(这种方式我们不推荐用)


标志接口的定义:接口中没有任何成员,就仅仅是一个接口的定义,其他的类实现该接口,就属于这一家族。可以使用第三方代码赋予该接口实现类特殊的功能(该方法也不推荐使用)。
     

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页