作者CSLabor (電腦工人)
看板java
標題[問題] 物件導向
時間Sat Dec 8 10:32:00 2012
有四個Class
有四個相同名稱的Method
但是相同名稱的method他們的參數數量 型別都不一樣
例如:
class A_Class
{
public void A_Method(String a,int b){
//do something
}
public void B_Method(int a,byte b){
//do something
}
public void C_Method(boolean a,String b){
//do something
}
public void D_Method(String a,String b){
//do something
}
}
class B_Class
{
public void A_Method(String a,String b,String c){
//do something
}
public void B_Method(int a,int b){
//do something
}
public void C_Method(boolean a){
//do something
}
public void D_Method(String a,String b,byte c){
//do something
}
}
class C_Class
{
public void A_Method(String a,String b,int c){
//do something
}
public void B_Method(int a,int b,int c,boolean d){
//do something
}
public void C_Method(boolean a,int b){
//do something
}
public void D_Method(String a,String b,String c){
//do something
}
}
class D_Class
{
public void A_Method(String a,String b,String c,boolean d){
//do something
}
public void B_Method(int a,int b,int c,int d){
//do something
}
public void C_Method(boolean a,boolean b,boolean c){
//do something
}
public void D_Method(String a,String b,String c,String d){
//do something
}
}
我想要用Abstract Class或是Interface去規範這些Method
但是因為相同名稱的Method在不同Class參數數量與型別都不一樣
所以不知道怎麼Define Abstract Class或是Interface
煩請有經驗的前輩給予小弟一些指導
在這邊先謝謝各位前輩的幫忙
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.167.65.253
推 PsMonkey:為甚麼你要抽一個 abstract / interface? 12/08 11:25
→ CSLabor:因為我想要用多型 類似doXXX(他們的父類別)之類的 12/08 12:12
→ CSLabor:不希望多一個Class就overloading一次 12/08 12:13
→ cha122977:吃的參數不一樣表示你要用之前還是要知道他是哪個class 12/08 13:38
→ TsaiCF:參考看看 Command 或 Strategy pattern, 12/08 18:11
→ TsaiCF:再回到你的原始需求好好分析設計一下。 12/08 18:12
推 SansWord:按照overriding 的定義,參數不同就是不同method了 12/09 04:22