欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java魔法值處理的四種方式

 更新時間:2023年11月06日 15:16:02   作者:242030  
這篇文章主要介紹了Java魔法值處理的四種方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

1、魔法值的定義

魔法值是 Java 中突兀出現(xiàn)在代碼中的常量

比如:

if(user.status==2){
}

這段代碼里面的2就是一個魔法值,這樣的數(shù)據(jù)會使得代碼難以理解,并且如果這個2用的地方很多,以后想要更

改也很麻煩還容易遺漏,所以就需要規(guī)范一下對魔法值的處理。

2、方法一靜態(tài)常量(不推薦)

public final static STATUS_FALSE=0;
public final static STATUS_TRUE=1;

直接在類中定義一個常量,這種方法對于魔法值的使用范圍只在一個類的范圍內(nèi)的情況下比較方便,哦,對了。常

量的命名一般都是大寫。

3、方法二接口中定義

public interface UserService{
	public final static STATUS_FALSE=0;
	public final static STATUS_TRUE=1;
}

寫在接口中的話好處就是,繼承這個接口的實(shí)現(xiàn)類都可以使用這些常量。

4、方法三定義在實(shí)體類

public class user{
	private String name;
	private Integer status;
	public final static STATUS_FALSE=0;
	public final static STATUS_TRUE=1;
}

這樣寫是比較推薦的,你可以在任意想用的地方使用類名打點(diǎn)的方式使用這些常量。

如果要寫的常量比較多也可以

直接建一個專門用來存放靜態(tài)常量的類。

5、方法四使用枚舉類enum

枚舉類是一種比較特殊的類想了解的

可以去搜搜我這邊只舉個簡單的使用例子。

public enum CarAssetsEnum {
    
    DELETE_FALSEE(0,"已刪除"),
    DELETE_TRUE(1,"未刪除");
    
    private final Integer value;
    private final String description;
    
    CarAssetsEnum(Integer value,String description{
        this.value=value;
        this.description=description;
    }
    
    public Integer value(){
        return this.value;
    }
                  
    public String description(){
        return this.description;
    }
}

在使用的時候就可以直接這樣使用

user.setStatus(CarAssetsEnum.DELETE_FALSEE.value())

6、總結(jié)

雖然使用魔法值也不會報錯,但是維護(hù)和閱讀成本過高,還是遵循規(guī)范不使用魔法值比較好(部分代碼是手敲的可能格式不太好看,大家就將就一下吧)。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論