A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 至简_HREO 中级黑马   /  2015-6-30 07:46  /  857 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 至简_HREO 于 2015-6-30 07:50 编辑

接口定义:[修饰符] interface 接口名 extends 父接口名1,父接口名2 ...{
              }
接口可以说是一种特殊的抽象类。接口只能定义方法,而不能实现方法的实例。
1.接口中能够定义抽象方法,这些方法都是默认为public。
2.接口中声明的属性都是默认为public static final,也只能是public static final。


public interface Output{   
//系统自动为接口中的成员变量增加public static final修饰符   
//下面两句代码的结果完全一样   
      int MAX_SIZE = 50;   
      public static int MAX_SIZE =  50;
}


3.接口可以继承其他的接口,并添加新的属性和方法。一个接口可以有多个父接口,但接口只能继承接口,不能继承类。
类实现接口的语法格式
[修饰符] class 类名 extends 父类 implements 接口1,接口2...{    类体部分}
一个类实现了一个或多个接口之后,这个类必须完全实现这些这些接口里所定义的全部抽象方法(也就是重写);否则该类将保留从父接口那里继承的抽象方法,该类必须定义为抽象类。


//定义Sing接口
interface Sing{   
   void eat();   
   void sleep();
}
public class Test implements Sing{   
//重写接口中的方法   
@Override   
    public void eat() {        
    System.out.println("能吃饭");   
}   
@Override   
    public void sleep() {        
          System.out.println("能睡觉");   
     }   
public static void main(String[] args)   
{        Sing p = new Test();      
      //输出:能吃饭        
     p.eat();        
     //输出:能睡觉      
      p.sleep();   
}





6 个回复

倒序浏览
补充一点,浅见  抽象类和接口的区别? 1:抽象类只能被继承,而且只能单继承。 接口需要被实现,而且接口与类之间可以多实现,接口与接口之间可以多继承。  2:抽象类中可以定义非抽象方法,子类可以直接继承使用。 接口中都是抽象方法,需要子类去实现。 3:抽象类使用的是  is a 关系。 接口使用的 like a 关系。  4:抽象类的成员修饰符可以自定义。 接口中的成员修饰符是固定的, 成员变量由public static final修饰,是常量,成员方法由public abstract修饰,为抽象方法。 5.抽象类有构造方法,而接口没有。

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1

查看全部评分

回复 使用道具 举报
补充一下:
1:抽象类只能被继承,而且只能单继承。
接口需要被实现,而且接口与类之间可以多实现,接口与接口之间可以多继承。
2:抽象类中可以定义非抽象方法,子类可以直接继承使用。
接口中都是抽象方法,需要子类去实现。
3:抽象类使用的是  is a 关系。
接口使用的 like a 关系。
4:抽象类的成员修饰符可以自定义。
接口中的成员修饰符是固定的,
成员变量由public static final修饰,是常量,成员方法由public abstract修饰,为抽象方法。
5.抽象类有构造方法,而接口没有。
回复 使用道具 举报
wenxueaaa555 发表于 2015-6-30 20:20
补充一下:
1:抽象类只能被继承,而且只能单继承。
接口需要被实现,而且接口与类之间可以多实现,接口与 ...

多谢补充  
回复 使用道具 举报
很好的一篇帖子啊。。。。。。
回复 使用道具 举报
谢谢楼主分享~
回复 使用道具 举报
谢谢分享!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马