码迷,mamicode.com
首页 > 编程语言 > 详细

【Java基础】Java接口的总结

时间:2015-10-23 18:01:19      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:

什么是接口

  接口和抽象类很相似,也是一种抽象的概念,用Interface关键字来修饰。那有了抽象类为啥还要有个接口呢,既然都是抽象的,要一个不就可以了吗?其实不是这样的,抽象类是对一类事物共性的一种抽象,但是对于一些属于部分个体的特性和功能,我们需要接口来进行扩充。例如:Person是对不同人的抽象,如黑人,白人,黄种人等,他们都有姓名,年龄,肤色等属性,都会走,会跑,会吃东西,会睡觉这些功能,但是对于一些特技,例如有些人有普通人不具备的特性,例如会将手转360度,这些特别的非共性的东西可以放在接口中,拥有这种特性的人可以实现接口达到继承抽象方法 相似的目的。

 

接口中的成员特点

从接口中的成员变量,构造方法和成员方法去总结。

  1. 成员变量:
    成员变量不管是否显示定义类型,都默认为public static final类型的静态常量,所以不能被修改,继承,可以通过接口名去访问 
  2. 构造方法:
    接口没有构造方法!!!这个和抽象类不同。那实现接口的子类如何初始化呢?因为子类初始化都默认调用super();
    class Student extends Object implements InterPerson{
       public Student() {
           super();
       }
    }

    其实所有类如果没有写继承类,默认都是extends Object这个祖先类,所以这里的super()调用的是Object类中的无参构造方法。

  3. 成员方法:
    成员方法默认是public abstract修饰的!也就意味中接口中的成员方法必须无方法体;这个不同于抽象类,抽象类中方法可以是抽象,也可以有自己的方法,而且也可以有非public类型方法。
    另外,由于成员方法默认是public abstract修饰的,所以自然不能和final以及static同时存在了。

总结起来就是:接口中无默认构造方法,所有成员变量都是public static final修饰的,所有的成员方法都是public abstract修饰的。

【Java基础】Java接口的总结

标签:

原文地址:http://www.cnblogs.com/gslyyq/p/4904804.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!