3
我有我想其中一個方法來重構Eclipse的重構重寫方法成最終和抽象部分
基本上我想要分割的抽象頂層方法和最後部分。 在其中添加了附加功能的不少地方,有關方法被覆蓋,但最終總是會發出超級呼叫。
代碼現在基本上是這樣的: (不是所有的擴展類覆蓋,但那些做,做這種方式)
class Base {
public Object getStuff(String key) {
out = //code to get data from the Database.
return out
}
class Extended1 extends Base {
public Object getStuff(String key) {
if("some_non_db_value".equals(key)) {
return "some custom stuff";
}
return super.getStuff(key);
}
}
我想什麼,結果會是這樣的:
class Base {
public final Object getStuff(String key) {
out = getCustom(key);
if(out != null) {
return custom;
}
out = //code to get data from the Database.
return out
}
public abstract Object getCustom(String key);
}
class Extended1 extends Base {
public Object getCustom(String key) {
if("some_non_db_value".equals(key)) {
return "some custom stuff";
}
return null;
}
}
我希望會有一個重構行爲離子(或部分重構)到達(或更接近)這一點。
這基本上是我所做的 – pvgoddijn 2012-08-09 12:34:48