zoukankan      html  css  js  c++  java
  • JAVA_SE基础——47.接口

    如果一个抽象类中的所有方法都是抽象的,则可以将这个类用另一种方法来定义,即接口~

    在定义接口时,需要用interface关键字来声明,具体实例如code1



    接口的定义格式:

    interface 接口名{

    }



    code1

    interface Animal{
    	int num = 1 ;   //定义全局变量
    	void breathe();  //定义抽象方法
    	void run();
    }
    上面代码中,Animal就是一个接口。在code1中 会发现抽象方法breathe()并没有使用abstract关键字来修饰,这是因为接口定义的方法和变量都包含一些默认修饰符。 

    接口中定义的方法默认使用“public abstract”来修饰 即是抽象方法。

    接口中定义的变量默认使用“public static final”来修饰 即是全局常量。



    实现接口的格式:


    class  类名 implements 接口名{

    }



    code2(实现A接口)

    package day09;
    interface A{
    	//成员变量
    	public static final int num=1;
    
    	//成员函数
    	public void print();
    }
    public class Demo7 {
    	//实现接口中的方法
    	public void print(){
    		System.out.println("这个是接口中的print方法...");
    	}
    	public static void main(String[] args){
    		Demo7 d = new Demo7();
    		d.print();
    	}
    }
    code2运行结果:





    接口的特点:

    1. 类实现接口可以通过implements实现,实现接口的时候必须把接口中的所有方法实现,一个类可以实现多个接口。

    2. 接口中定义的所有的属性默认是public static final的,即静态常量既然是常量,那么定义的时候必须赋值。

    3. 接口中定义的方法不能有方法体。接口中定义的方法默认添加public abstract

    4. 有抽象函数的不一定是抽象类,也可以是接口类。

    5. 由于接口中的方法默认都是抽象的,所以不能被实例化。

    6. 对于接口而言,可以使用子类来实现接口中未被实现的功能函数。

    7. 如果实现类中要访问接口中的成员,不能使用super关键字。因为两者之间没有显示的继承关系,况且接口中的成员成员属性是静态的。可以使用接口名直接访问。

    8. 接口没有构造方法。

    9.当一个类实现接口时,如果这个类是抽象类,则实现接口中的部分方法即可,否者需要实现接口中的所有方法。

    10.一个类通过implements关键字实现接口时,可以实现多个接口,被实现的多个接口之间要用逗号隔开。具体如code3

    11.一个接口可以通过extends关键字继承多个接口,接口之间用逗号隔开。具体如code4

    12.一个类在继承另一个类的同时还可以实现接口,此时,extends关键字必须位于implements关键字前。具体如code5

    接口(interface):usb接口,主要是使用来拓展笔记本的功能,那么在java中的接口主要是使用来拓展定义类的功能,可以弥补java中单继承的缺点。


    code3(一个类实现多个接口)

    interface Run{
    	//code……
    }
    interface Fly{
    	//code……
    }
    class Bird implements Run,Fly{
    	//code……
    }


    code4(接口继承多个接口)

    interface A{
    	//code……
    }
    interface B{
    	//code……
    }
    interface C extends A,B{
    	//code……
    }

    code5(extend关键字必须位于implements关键字之前)

    class A extends B implements C{ //先继承 再实现
    	//code……
    }


    接口的作用:
    1. 程序的解耦。  (低耦合)
    2. 定义约束规范。
    3. 拓展功能。

    接口的用途不但多,而且是非常必要。这就是为什么我们为什么老是提“面向接口编程”的概念。
    你现在对其理解不深没有关系,只是在实际中先用。等积累到一定程度就知道接口的好处了。



    为什么要用接口 :用于处理多变的情况。
    接口在实际开发过程中最大好处是,你可以按照设计,先把接口写好,然后分配大伙干活的时候,告诉a们去用写好的接口去实现他们的具体功能,而告诉b们,去写那些已经写好但是没有具体的代码的接口,这样可以提高工作效率。并且底层和应用也通过接口做了一个很明显的分层。


    接口的定义格式:

    interface 接口名{

    }
  • 相关阅读:
    关于工作流程引擎中的岗位的设置的问题
    将要发布的开源CCOA的照片一览
    关于多个checkbox在IE6下自由表单设计器中的兼容问题
    ccflow流程自动发起功能增加,如何按指定的时间触发方式发起流程?
    Windows 如何远程强行关机
    Report bulder
    微软sample and code down web address
    如何查看sql server的死锁情况
    如何读取数据的所有用户表
    复制和数据库镜像
  • 原文地址:https://www.cnblogs.com/Jhaiha0/p/8465295.html
Copyright © 2011-2022 走看看