多型是為了更上層抽象,便于擴展,靜態是為了呼叫方便,但Java里靜態方法一般是不能多型的。
我是這么做的,定義抽象類和抽象方法(多型),實體化的時候,把這個物件賦給該抽象類的一個靜態屬性(同型別),比如說叫current
然后在這個抽象類里定義靜態方法,使用這個靜態屬性current,就相當于采用靜態呼叫的方式,呼叫了一個實體物件的方法。
這樣做有什么缺點么?
代碼類似下下面這樣的
public abstract class Database {
public static Database current;
public abstract void create2(); //抽象方法,可以多型
public static void create() {
current.create2();
}
}
呼叫的話直接Database.create()就可以了,不過這樣使用只能是那種一般只需要一個實體的工具類。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/275267.html
標籤:Java EE
下一篇:如何使得原視窗隱藏或者關閉
