close

使用public static final 來設定常數(大寫字母),能增加程式閱讀性

但有時應避免使用常數,因為int整數的範圍太大,而程式只需要幾個特定的值。

可以使用Enum列舉,避免輸入錯誤的值。

 

 

例如:

public enum Engine {
    // Java 5 之前沒有列舉,需自行建立特定數量的物件
//    public static final Engine engine_open = new Engine();
//    public static final Engine engine_close = new Engine();

    //私有建構子,避免外界程式建立物件
//    private Engine() {
//    }

//Java 5.0之後提供列舉,可簡化Enum Pattern做法 
    close, open;

}


public class main {
    public static void main(String[] args) {
       Taxi bmw = new Taxi();
       bmw.setState(Engine.open);
//       bmw.setState(28);     //錯誤的狀態值
    }
}


Singleton Pattern

確保物件只有一份。

例如 : 

public class 屠龍刀 {
    private static final 屠龍刀 instance = new 屠龍刀();
    private 屠龍刀() {
    }
    public static 屠龍刀 getInstance() {
        return instance;
    }
 }


public class Main {

    public static void main(String[] args) {

//        屠龍刀 a = new 屠龍刀(); //編譯失敗,因為建構子為私有
        屠龍刀 a1 = 屠龍刀.getInstance();
        屠龍刀 a2 = 屠龍刀.getInstance();
        System.out.println("是否參考相同物件: " + (a1 == a2));

    }

}

 

arrow
arrow
    文章標籤
    程式語言 HomeWork
    全站熱搜

    蛋餅Brook 發表在 痞客邦 留言(0) 人氣()