想成為JAVA高手,你至少要非常熟悉并能自如地應用如下幾個知識點:
1.序列化機制.(有人認為它并不是重要的技術,我以我的經驗聲明,這是JAVA平臺第一重要的知識點.)
2.RTTI機制
3.CALLBACK機制
4.反射機制
序列化:
是一切對象深度CLONE,對象的存儲與恢復,對象的遠程調用的基礎,也就是說它是對象池化管理,分布式引用的基礎,想想J2EE平臺如果不靠它能做什么?
RTTI:
是一切封裝的基礎,沒有它,接口,抽象類,父類就沒有意義,如果封裝沒有了,同樣沒有父類,子類就不叫子類了.
CALLBACK:
CALLBACK首先是基于多線程的,沒有線程的調用就不要談回調.子類調用父類的構造方法叫回調用,那TMD的任何構造對象都叫回調了,因為任何對象至少繼承了Object,構造時至少要調用Object的構造方法.
CALLBACK機制:
一個主線程管理其它線程時,不用輪詢方法檢查各個線程的狀態,而是在子線程中出現某種狀態時通知主線程,啊,有人要按下我了,啊,我的值到達100了,(術語叫觸發了某種事件)這樣主線程收到這些消息再根據消息類型去調用相應的方法.
一個例子,我(主線程)坐車去北京,當車到北京時我要調用"下車"這個方法,如果不用回調用機制,我要不斷地問driver,到了沒有啊?如果我問超過三次而那個driver力氣又比我大的話,他肯定要打我,如果用回調用機制,就是用一個子線程(可以讓driver承擔這個角色)在那運行,當到的時候通知我到了,我就調用"下車()",而不用過一會就問一次,這樣我可以省下時間睡覺或和車上的美眉聊天.
反射:
是RUNTIME的事,完成類的加載,類的分析,bean的自省等功能,JBUILDER為什么敲一個類的名稱后面就列出了它的成員變量和方法供你選擇?如果你想知道一個對象的某種方法被調用過多少次你用什么方法?這些知識可以讓你從一行Exception就能分析出錯誤原因.以及自己實現classloader,安全管理等方面的工作.
文章出處:http://www.diybl.com/course/3_program/java/javashl/200726/10742.html