如果我理解正確,您的問題是,方法b具有與方法相同的代碼,再加上一些更多的代碼。像
public class x
{
public void a()
{
// a code
}
public void b()
{
// a code
// b code
}
}
東西,如果這是你可以調用方法的方法B這樣
class x
{
public void a()
{
// a code
}
public void b()
{
a();
// b code
}
}
另一種情況的情況是,你有共同的代碼,這兩種方法:
class x
{
public void a()
{
// common code
// a exclusive code
}
public void b()
{
// common code
// b exclusive code
}
}
然後,您可以將該代碼提取到另一種方法,如下所示:
class x
{
public void a()
{
CommonMethod();
// a exclusive code
}
public void b()
{
CommonMethod();
// b exclusive code
}
private void CommonMethod()
{
// common code
}
}
並重寫相同類中的方法。它被稱爲method overloading,但它的工作原理允許您創建幾個名稱相同的方法,這些方法在輸入類型方面各不相同。
像這樣
class x
{
public string a(int i)
{
}
public string a(string s)
{
}
}
的唯一限制是這些方法必須(在這個例子中的字符串)相同的返回類型。
感謝Merlyn對上你的評論,我投了你的短信..是有助於我的理解感謝 – GibboK 2011-06-09 11:52:40
@GibboK:您可能還需要檢查出的書:計算機程序的結構和解釋。它的主要目的是教你如何分解代碼。它使用Lisp,但它教授的每個概念都直接適用於任何現代語言。這本書也可以免費分發到網上。 http://mitpress.mit.edu/sicp/full-text/book/book.html。網絡上還有一個免費的視頻系列(或多或少)具有相同的內容。 – 2011-06-09 18:23:11