#打卡學習##JAVA#記錄的第三天 枚舉 常量接口

hello 第三天啦
在這裏插入圖片描述
今天也是元氣滿滿的一天呢!!!
今天學習了枚舉常量接口還有加強了對昨天接口的認知!

常量接口

程序當中,需要有直觀的含義,可以使用接口常量. 紅綠燈示例;

interface ITrafficLight{
    public static final int RED = 1;
    public static final int GREEN = 2;
    public static final int YELLOW = 3;
}

public static void main(String[] args){
    
    int currentLight = x;
    
    if(currentLight == ITrafficLight.RED){
        currentLight = ITrafficLight.GREEN;
    }else if(currentLight == ITrafficLight.YELLOW){
        currentLight = ITrafficLight.RED;
    }else{
        currentLight = ITrafficLight.YELLOW;
    }
    
}

整個項目通用的錯誤碼;我們除了程序裏面用來進行判斷錯誤,直觀的知道這個錯誤當前是什麼意思.

//常量接口
public interface IErroCode {
	
	//10000-20000之間的所有錯誤碼就表示用戶方面的錯誤問題;
	int USER_NOT_FIND = 10000; //這個錯誤碼就代表當前用戶沒有找到;
	int PASS_WORNG = 10001; //就代表密碼錯誤;
	int USER_EXCEPTION = 10002; //用戶狀態異常
	
	
	//20000-30000之間的錯誤碼,表示商品之類的錯誤問題;
	int GOODS_NOT_FIND = 20001; //沒有找到這個商品的錯誤碼;
	
	
	//30000-40000 系統異常等等內容
	
}

還有整個項目通用的狀態碼

public interface IStatusCode {
	
	//描述我們系統某些部件的狀態的代碼;
	
	String CODING_MAN = "正在寫代碼...";
	
	
	int TICKET_STATUS_BAUCK = 88888;//車票狀態 88888就代表是退票了

}

枚舉

枚舉類可以實現一個或者多個接口,使用enum定義的枚舉類
繼承了java.lang.Enum類而不是繼承Object類 不能顯示繼承其他父類
其中java.lang.Enum類實現了java.lang.Serializablejava.lang.Comparable兩個接口。

使用enum定義、非抽象的枚舉類默認會使用final修飾,因此枚舉類不能派生子類

枚舉類的構造器只能使用private訪問控制符,如果省略了構造器的訪問控制符,則默認使用private修飾;如果強制指定訪問控制符,則只能指定private修飾符。

枚舉類的所有實例必須在枚舉類的第一行顯式列出,否則這個枚舉類永遠都不能產生實例。列出這些實例時,系統會自動添加public static final 修飾,無須程序員顯式添加。

枚舉類默認提供了一個 values() 方法,該方法可以很方便地遍歷所有的枚舉值。
舉例;

//枚舉的構造器是私有的
//枚舉只能在自己的首行代碼實例化自己的對象
//枚舉的實例對象,默認會加上 public static final修飾
public enum Week { //規定你只能有哪幾個實例

	//MONDAY: 就是枚舉的實例,代表是一個枚舉對象
	//定義了7個Week的對象;
	//實例變量名分別是  MONDAY , TUESDAY .....
	MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURADAY,SUNDAY;
	
	//MONDAY : 就是一個具體的對象;   public static final Week MONDAY = new Week();
	//TUESDAY : 也是一個具體的對象;  public static final Week TUESDAY = new Week();
	
	//枚舉可以有方法,可以有成員變量
	String pt;
	
	public void test() {
		//this:當前對象
		System.out.println("枚舉裏面的test方法" + this.name());
	}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章