• java基础13 接口(及关键字:interface、implements)


    接口

    1、接口的定义格式

    interface 接口名{
        
    }
    interface :接口的关键字
    implements:实现接口的关键字

    2、接口的作用

            1.程序的解耦.(低耦合)
            2.定义了约束规范
            3.拓展了功能

    3、接口要注意的事项

    1.接口是一个特殊的类
    2.接口的成员变量的修饰符默认为:public static final. 那么接口中的成员变量都是常量
    3.接口中的方法都是抽象方法,默认修饰符为:public abstract.
    4.接口是不能创建对象的
    5.接口没有构造方法
    6.接口是给类实现使用的,非抽象类实现一个接口时,必须要把接口中的所有方法都实现

     1 interface A{
     2     //成员变量
     3     public  static final int i=10;  //接口中默认有:public static final修饰变量;最终都是常量
     4     //成员函数
     5     public void print();
     6 }
     7 //Demo11就实现了A接口
     8 class Demo11  implements A{
     9     //实现接口中的方法
    10     public  void print(){
    11         System.out.println("hello"+"--->"+i);
    12     }
    13     public static void main(String[] args) {
    14         Demo11 d=new Demo11();
    15         d.print();
    16         System.out.println("Hello World!");
    17     }
    18 }

    运行结果

    4、类与接口之间的关系

    类与接口之间的关系:实现关系 (implements

    interface A{ //接口A
         //成员函数
         public void print();
     }
    //
    类(Demo11) 实现 接口(A)里面的方法 class Demo11 implements A {   public void print(){

      } }

    5、类与接口需要注意的细节

        1.非抽象类实现一个接口时,必须实现接口中的所有方法
        2.抽象类实现一个接口时,可以实现也可以不实现接口中的方法
        3.一个类可以实现多个接口

     1 例子1
     2 
     3 //所有接口都是抽象的,里面的方法都是抽象方法
     4 interface A{
     5     public void makeMoney();
     6 }
     7 
     8 interface C{
     9     public void p(); 
    10 }
    11 
    12 interface B extends A,C{//一个接口可以继承多个接口
    13     public void study();
    14 }
    15 //Student类 含有上面三个接口中的方法
    16 class Student implements A,B{ //一个类可以实现多个接口 
    17     public void makeMoney(){
    18         System.out.println("java111");
    19     };
    20     public void study(){
    21         System.out.println("java222");
    22     };
    23     public void p(){
    24         System.out.println("java333");
    25     }
    26 }
    27 
    28 class Demo10 {
    29     public static void main(String[] args) {
    30         Student s = new Student();
    31         s.makeMoney();
    32         s.study();
    33         s.p();
    34     }
    35 }

    运行结果

     1 例子2
     2  
     3 interface A{
     4      public void makeMoney();
     5  }
     6  
     7 interface C{
     8      public void p();
     9 }
    10 
    11 interface B extends A,C{//一个接口可以继承多个接口
    12      public void study();
    13 }
    14 //抽象类实现一个接口时,可以实现也可以不实现接口中的方法
    15 abstract class Student implements B{ //接口C中的P()方法没实现,也不会报错。如果Student类不是抽象类,那么上面三个接口中的方法必须都要实现,否则报错。
    16      public void makeMoney(){
    17      
    18      };
    19      public void study(){
    20      
    21      };
    22 }

    6、接口与接口关系

    接口与接口关系:继承关系

     1 //所有接口都是抽象的,里面的方法都是抽象方法
     2 interface A{
     3     public void makeMoney();
     4 }
     5 
     6 interface C{
     7     public void p(); 
     8 }
     9 
    10 interface B extends A,C{
    11     public void study();
    12 }

    7、接口与接口需要注意的事项

        1.一个接口可以继承多个接口.

    原创作者:DSHORE

    作者主页:http://www.cnblogs.com/dshore123/

    原文出自:http://www.cnblogs.com/dshore123/p/8873647.html

    欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!

  • 相关阅读:
    《Spring2之站立会议1》
    《Spring1之第十次站立会议》
    《Spring1之第九次站立会议》
    《Spring1之第八次站立会议》
    《Spring1之第七次站立会议》
    LeetCode
    LeetCode
    LeetCode
    LeetCode
    LeetCode
  • 原文地址:https://www.cnblogs.com/dshore123/p/8873647.html
Copyright © 2020-2023  润新知