1. 程式人生 > >JAVA基礎(59)---介面

JAVA基礎(59)---介面

介面

       對外提供一個標準和規範。至於其中的實現,並不去關心。

介面定義:interface

介面和類的區別:

  1. 介面不能建立物件。
  2. 介面中沒有構造方法

 介面的意義

                      介面是用來被實現的。

介面的組成

  1. 介面中宣告的變數,預設都是public static final
  2. 在介面不存在變數,存在的只能是常量,而且是靜態常量
  3. 在介面中只能存在抽象方法。
  4. 在介面中可以存在靜態方法。包括方法的實現。方法的修飾只能使用public  abstract  static  default

介面的使用

                    介面名稱  引用變數 = new  實現類();  

 

對於介面的實現類,必須實現介面中的所有的抽象方法。如果實現類沒有實現介面中的所有的抽象方法,那麼該實現類必須是抽象類。

在Java中多型的由兩種體現

  • 繼承:父類的引用指向子類物件
  • 介面:介面的引用指向實現類的物件。

介面的特點

  1. 介面可以繼承介面,介面中的繼承是多繼承(一個介面可以繼承多個介面)
  2. 對於存在繼承關係的介面,那麼他的實現類就要求不但要實現該介面的所有的方法,而且還要實現該介面的所有的父介面所有方法
  3. 介面的實現類可以實現一個或者多個介面:如果一個類實現了多個介面,那麼該類就必須實現介面中的所有的方法,如果不能實現介面中的所有的方法,那麼該類必須就是抽象的。

 

public interface InterfaceDemo{
    public static final int num = 10;
   
    public static void show() {
	}
    public abstract  void print();
}
public  class InterfaceDemoimpl implements InterfaceDemo{
	int num = 20;

	@Override
	public void print() {
		// TODO Auto-generated method stub
		
	}

	
}
package org.lanqiao.inter.demo;

public class Test {
	public static void main(String[] args) {
		///InterfaceDemo id = new InterfaceDemo();
		InterfaceDemo id = new InterfaceDemoimpl();
		//InterfaceDemo.num = 20;
		int i = InterfaceDemo.num;
		System.out.println(i);
	}
}