看了mingjava在網站上的前三篇文章,覺得這本書確實值得大家認真的讀,后來跟mingjava說想接著他的寫,于是就有了這接下來的文章,希望不是狗尾續貂,寫得不好,大家多多給我提意見,我會努力去改進的。
由于以前學過C語言,所以對C還是蠻有感情,而JAVA和C又有很多相似之處,很多從C轉過來學習JAVA的兄弟,可能一開始都不是很適應,因為很多在C里面的結構在JAVA里面都不能使用了,所以下面我們來介紹一下C語言結構的替代。
Item 19:用類代替結構
JAVA剛面世的時候,很多C程序員都認為用類來代替結構現在太復雜,代價太大了,但是實際上,假如一個JAVA的類退化到只包含一個數據域的話,這樣的類與C語言的結構大致是等價的。
比方說下面兩個程序片段:
class Point
{
PRivate float x;
private float y;
}
實際上這段代碼和C語言的結構基本上沒什么區別,但是這段代碼恐怕是眾多OO設計Fans所不齒的,因為它沒有體現封裝的優異性,沒有體現面向對象設計的優點,當一個域被修改的時候,你不可能再采取任何輔助的措施了,那我們再來看一看采用包含私有域和共有訪問方法的OO設計代碼段:
class Point
新聞熱點
疑難解答