java~使用枚(mei)舉來實現接口的(de)多態
java的(de)(de)enum類(lei)型,與C#不一樣,它就(jiu)(jiu)是(shi)一個類(lei),它可以實(shi)現接口,并(bing)且,可以通過的(de)(de)不同的(de)(de)枚(mei)舉值來(lai)實(shi)現一個接口,這就(jiu)(jiu)是(shi)枚(mei)舉的(de)(de)多態(tai)性。
- 下面的例子,在Hello接口有方法print,在枚舉Strategy中,通過不同的枚舉值分別實現了Hello接口,如下代碼
enum Strategy implements Hello {
CHINA() {
@Override
public void print() {
System.out.println("中文");
}
},
US() {
@Override
public void print() {
System.out.println("eng for us");
}
};
}
interface Hello {
void print();
}
- 在使用中,你可以按著具體的策略去使用對應的方法即可
@Test
public void test() {
Strategy.CHINA.print();
Strategy.US.print();
}
