Tag Archives: java

[分享]Sun Java認證考試Prometric線上報名流程

原文網址:http://macspeed.net/wordpress/?p=13 1.0適用於所有SUN認證考試報名:SCJP、SCMAD、SCJA、SCDJWS、SCJD、SCJA、SCJD、SCWCD、SCBCD、SCEA、SCNA、SCSA等等。 2.SUN Voucher(認證卷)可以參考台灣Sun官方網站。 3.n認證體系與考試編號查詢:2010年Sun Java認證體系介紹。 4.SCJP 6.0試編號是310-065。決定考試日期,時間與考試地點,考試地點可以參考這裡,決定考試地點後,要記住考場代號,例如聯成電腦公館分校是TI17  5. 一個註冊好的Prometric帳號與密碼,如果還沒有Prometric帳號,先到這裡完成註冊  6. 開啟Prometric首頁

Java, SCBCD, SCDJWS, SCEA, SCJA, SCJD, SCJP, SCNA, SCSA, SCWCD, SUN Also tagged , , Leave a comment

Java認證常見問題FAQ

  在IT業迅猛發展的今天,獲得權威認證為個人發展提供了越來越多的良好契機。Sun公司的Java認證共有以下三種:Java程式師,Java開發員和Java2企業級設計師。目前國內開展的Java認證考試僅為前兩種。其中,Java程式師的認證考試以Sun公司指定的Java SL-275為教材,考試號為310-025;Java開發員的認證考試以Sun指定的Java SL-285為教材,機考部分的考試號為310-027。   Java程式師認證   一、 怎樣可以獲得Sun公司的Java認證?    如果你希望取得Sun公司Java認證,那麼必須通過Java程式師(SCJP)的考試。授權培訓中心所開設的Java程式師課程可以幫助你在短期內掌握Java編程的知識和技巧,並準確地把握考點。 二、 Java認證培訓針對什麼樣的群體?   經常有人諮詢:自己對Java語言比較陌生,對程式設計也沒有什麼基礎,怎樣做才可以取得Java程式師的認證?還有些專門從事程式開發甚至Java開發的人,也常常在猶豫,是不是可以不接受培訓直接參加考試?其實,從原則上講,培訓和考試是完全獨立的,可以直接報名參加認證考試。但是,由於Java認證考試的考點和別的學科並沒有任何相似性,而且也完全不同於我們日常的Java編程,所以僅僅自學或依靠自己的編程”底子”都是比較盲目的。而在Java程式師的培訓課程中,講師將針對考試中可能遇到的各種題型,有的放矢,更好地幫助學員迅速準確地抓住考試要點。如果學員在短期內不能很好地掌握所學內容,可以免費重聽。 三、 Java認證培訓能提供什麼樣的服務?   為了滿足廣大學員的培訓需求,讓大家更快更及時地掌握知識並獲得認證,講師將使用Sun公司指定教材,系統、完整、全面地講述課程的內容,並根據各知識點所需要掌握的深度,有層次、有重點、有目的地指導學員的學習。同時,對各種題型的分析和講解更能幫助學員直觀、準確地瞭解認證考試。  四、 如何參加Java程式師的認證考試?   在有了充分的準備後,就可以著手參加考試了。首先需要提前2天到考試中心註冊考生ID,並和考試中心的工作人員預約考試時間。考生必須按時參加考試,並攜帶本人身份證。考試結束即可看到考試結果。Sun公司頒發的證書將在考試之後的2個月內以信件方式發到考生註冊的位址處。 五、 Java程式師認證的考點有哪些?    Java程式師的認證考試以Sun公司的SL-275英文原版教材為標準,需要掌握並作為考試內容的知識點有:聲明和許可權控制,流控制和異常處理,垃圾回收機制,基本語法,運算元和符號,重載、覆蓋、運行類型和面向物件,線程等;此外,還有Java.awt、 Java.lang、 Java.util、Java.io包中的常用類等。 六、 Java認證考試有哪些注意事項?    JavaSL-275的考試共有試題59道,通過分數為61分(答對36道題即可)。時間為120分鐘,在提交試卷前的任何時候,都可以看到任意一道試題。題型分為單選和多選題(可根據單選框或多選框來判斷),多選題在題目中將指明該題有幾個正確答案。 七、 有哪些資料可以幫助學員學習?    市面上有很多Java教程的相關書籍,有些可以輔助學員更好地學習和掌握Java程式師所應掌握的知識點,如《Java寶典》、《精通Java》、《Java語言程式設計大全》等。但有時這些書籍上的某些內容會跟Sun公司指定的教材有些出入,這時,我們應當以教材的提法為准。當然,無論是教材還是自己購買的書籍都只是對Java語言的系統性的講述,要抓住考試的要點和難點,還應當以培訓課程講師講述的內容為准。   Java開發員認證     在獲得程式師的認證後,可以繼續學習取得Java開發員(SCJD)的認證。相對於Java程式師的認證來說,開發員的知識掌握和證書取得要更難些。也正因為如此,開發員的證書對個人能力的標識和個人擇業更具價值。下面將對Java開發員認證考試的相關事宜做一些必要的介紹。   一、 Java開發員認證課程   講授Java開發員認證課程的講師均是具有開發經驗、博學廣識的。在5天的培訓課程中,不僅向學員講Java程式架構、編程技巧,同時向學員灌輸Java面向物件的編程思想。學員將學習如何從始至終開發一個實際的兩層/多層Java Intranet應用程式及有關的平臺移植問題。 課程的具體內容有:解釋軟體發展週期每階段的目標,可使用適當的Java程式類型,瞭解API設計的基本元素,根據專案中的功能要求確定程式元件;描述關聯資料庫的設計及其設計原則;瞭解JDBC、ODBC及其使用;創建良好的GUI設計原則設計自己的用戶介面;使用Socket連接以適當格式傳輸資料,創建一個多層Java小程式或應用程式;瞭解在Solaris和Windows平臺之間的移植問題。   二、 Java開發員的認證考試    Java開發員的考試分程式設計和機考兩部分。其中,程式設計部分不限時。考生報名後,可從指定的網址下載考試題目,並根據題目要求進行程式設計。在指定的時間段(1年)內,考生須傳回自行設計的Java程式。但通常情況下,考生都會在2至3個月內將程式傳回。機考部分將針對程式回答題目,只要真正領悟和掌握了設計程式的過程和內容,回答這部分考題就沒有問題了。開發員的認證考試是對一個Java開發人員綜合能力的一種考核,通過該課程的學習將培養一個程式設計人員的獨立編程的能力,而該證書的取得也是對這種能力的一個有力證明.

310-065, SCJP, SUN Also tagged , , , Leave a comment

學習Java語言的重要含義

1. Java是目前使用最為廣泛的網絡編程語言之一。它具有簡單,面向對象,穩定,與平台無關,解釋型,多線程,動態等特點。      2.簡單Java語言簡單是指這門語言既易學有好用。不要將簡單誤解為這門語言很乾癟。你可能很贊同這樣的觀點英語要比阿了伯語言容易學。但這並不意味著英語就不能表達丰富的內容和深刻的思想,許多文學若貝爾獎的作品都是英文寫的。如果你學習過C++語言,你會感覺Java很眼熟,因為Java中許多基本語句的語法和C++一樣,像常用的循環語句,控制語句等和C++幾乎一樣,但不要誤解為Java是C++的增強版,Java和C++是兩種完全不同的語言,他們各有各的優勢,將會長期並存下去,Java語言和C++語言已成為軟件開發者應當掌握的語言。如果從語言的簡單性方面看,Java要比C++簡單,C++中許多容易混淆的概念,或者被Java棄之不用了,或者以一種更清楚更容易理解的方式實現,例如, Java不再有指針的概念。      3.面向對象基於對象的編程更符合人的思維模式,使人們更容易編寫程序。在實際生活中,我們每時每刻都與對像在打交道。我們用的鋼筆,騎的自行車,乘的公共汽車等。而我們經常見到的卡車,公共汽車,轎車等都會涉及以下幾個重要的物理量可乘載的人數,運行速度,發動機的功率,耗油量,自重,輪子數目等。另外,還有幾個重要的功能加速功能,減速功能,剎車,轉彎功能等。我們也可以把這些功能稱作是他們具有的方法,而物理量是它們的狀態描述。僅僅用物理量或功能不能很好的描述它們。在現實生活中,我們用這些共有的屬性和功能給出一個概念機動車類。一個具體的轎車就是機動車類的一個實例對象.Java語言與其它面向對象語言一樣,引入了類的概念,類是用來創建對象的模板,它包含被創建的對象的狀態描述和方法的定義。      4.與平台無關與平台無關是Java語言最大的優勢。其它語言編寫的程序面臨的一個主要問題是操作系統的變化,處理器升級以及核心系統資源的變化,都可能導致程序出現錯誤或無法運行。 Java的虛擬機成功地解決了這個問題,Java編寫的程序可以在任何安裝了Java虛擬機JVM的計算機上正確的運行,Sun公司實現了自己的目標“一次寫成,處處運行”。      5.解釋型我們知道C,C++等語言,都是只能對特定的CPU芯片進行編譯,生成機器代碼,該代碼的運行就和特定的CUP有關。例如,在C語言中,我們都碰到過類似下面的問題int型變量的值是10 ,那麼下面代碼的輸出結果是什麼呢printf(“%d,%d”,x,x=x+1 )如果上述語句的計算順序是從左到右,結果是10,11但是,有些機器會從右到左計算,那麼結果就是11,11.Java不像C++,它不針對特定的CPU芯片進行編譯,而是把程序編譯為稱做字節碼的一個“中間代碼”。字節碼是很接近機器碼的文件,可以在提供了Java虛擬機JVM的任何系統上被解釋執行。 Java被設計成為解釋執行的程序,即翻譯一句,執行一句,不產生整個的機器代碼程序。翻譯過程如果不出現錯誤,就一直進行到完畢,否則將在錯誤處停止執行。同一個程序,如果是解釋執行的,那麼它的運行速度通常比編譯為可執行的機器代碼的運行速度慢一些。但是,對Java來說,二者的差別不太大,Java的字節碼經過仔細設計,很容易便能使用JIT即時編譯方式編譯技術將字節碼直接轉化成高性能的本地機器碼,Sun公司在Java 2發行版中提供了這樣一個字節碼編譯器——JIT(Just In Time),它是Java虛擬機的一部分。 Java運行系統在提供JIT的同時仍具有平台獨立性,因而“高效且跨平台”對Java來說不再矛盾。如果把Java的程序比做“漢語”的話,字節碼就相當於“世界語”,世界語不和具體的“國家”關,只要這個“國家”提供了“翻譯”,就可以再快速地把世界語翻譯成本地語言。      6.多線程Java的特點之一就是內置對多線程的支持。多線程允許同時完成多個任務。實際上多線程使人產生多個任務在同時執行的錯覺,因為,目前的計算機的處理器在同一時刻只能執行一個線程,但處理器可以在不同的線程之間快速地切換,由於處理器速度非常快,遠遠超過了人接收信息的速度,所以給人的感覺好像多個任務在同時執行。 C++沒有內置的多線程機制,因此必須調用操作系統的多線程功能來進行多線程程序的設計。      7.安全當你準備從網絡上下載一個程序時,你最大的擔心是程序中含有惡意的代碼,比如試圖讀取或刪除本地機上的一些重要文件,甚至該程序是一個病毒程序等。當你使用支持Java的瀏覽器時,你可以放心地運行Java的小應用程序Java Applet ,不必擔心病毒的感染和惡意的企圖,Java小應用程序將限制在Java運行環境中,不允許它訪問計算機的其它部分。      8.動態Java程序的基本組成單元就是類,有些類是自己編寫的,有一些是從類庫中引入的,而類又是運行時動態裝載的,這就使得Java可以在分佈環境中動態地維護程序及類庫,而不像C++那樣,每當其類庫升級之後,相應的程序都必須重新修改,編譯。

Java, SUN Also tagged , Leave a comment

寫Java程序的三十個基本規則

(1)類名首字母應該大寫。字段、方法以及對象(句柄)的首字母應小寫。對於所有標識符,其中包含的所有單詞都應緊靠在一起,而且大寫中間單詞的首字母。例如: ThisIsAClassName  thisIsMethodOrFieldName 若在定義中出現了常數初始化字符,則大寫static final基本類型標識符中的所有字母。這樣便可標誌出它們屬於編譯期的常數。 Java包(Package)屬於一種特殊情況:它們全都是小寫字母,即便中間的單詞亦是如此。對於域名擴展名稱,如com,org,net或者edu等,全部都應小 寫(這也是Java 1.1和Java 1.2的區別之一)。 (2)為了常規用途而創建一個類時,請採取“經典形式”,並包含對下述元素的定義:  equals()  hashCode()  toString()  clone()(implement Cloneable)  implement Serializable (3)對於自己創建的每一個類,都考慮置入一個main(),其中包含了用於測試那個類的代碼。為使用一個項目中的類,我們沒必要刪除測試代碼。若進行了任何形式的改動,可方便地返回測試。這些代碼也可作為如何使用類的一個示例使用。 (4)應將方法設計成簡要的、功能性單元,用它描述和實現一個不連續的類接口部分。理想情況下,方法應簡明扼要。若長度很大,可考慮通過某種方式將其分割成較短的幾個方法。這樣做也便於類內代碼的重複使用(有些時候,方法必須非常大,但它們仍應只做同樣的一件事情)。 (5)設計一個類時,請設身處地為客戶程序員考慮一下(類的使用方法應該是非常明確的)。然後,再設身處地為管理代碼的人考慮一下(預計有可能進行哪些形式的修改,想想用什麼方法可把它們變得更簡單)。 (6)使類盡可能短小精悍,而且只解決一個特定的問題。下面是對類設計的一些建議: 1.一個複雜的開關語句:考慮採用“多形”機制 2.數量眾多的方法涉及到類型差別極大的操作:考慮用幾個類來分別實現 3.許多成員變量在特徵上有很大的差別:考慮使用幾個類。 (7)讓一切東西都盡可能地“私有”——private。可使庫的某一部分“公共化”(一個方法、類或者一個字段等等),就永遠不能把它拿出。若強行拿出,就可能破壞其他人現有的代碼,使他們不得不重新編寫和設計。若隻公佈自己必須公佈的,就可放心大膽地改變其他任何東西。在多線程環境中 ,隱私是特別重要的一個因素——只有private字段才能在非同步使用的情況下受到保護。 (8)謹惕“巨大對象綜合症”。對一些習慣於順序編程思維、且初涉OOP領域的新手,往往喜歡先寫一個順序執行的程序,再把它嵌入一個或兩個巨大的對象裡。根據編程原理,對象表達的應該是應用程序的概念,而非應用程序本身。 (9)若不得已進行一些不太雅觀的編程,至少應該把那些代碼置於一個類的內部。 (10)任何時候只要發現類與類之間結合得非常緊密,就需要考慮是否採用內部類,從而改善編碼及維護工作(參見第14章14.1.2小節的“用內部類改進代碼”)。

Java, SUN Leave a comment

Java開發者的堅守的基本原則

有許多標準和實踐準則可適用於Java開發者,但此處要說的,是每個Java開發者需堅守的基本原則。   一、為代碼加註釋。雖然每個人都知道這點,但有時卻不自覺忘了履行,今天你“忘了”加註釋了嗎?雖然註釋對程序的功能沒什麼“貢獻”,但過一段時間,比如說兩星期之後或者更長,回過頭來看看自己的代碼,說不定已經記不住它是乾什麼的了。假如這些代碼是你個人的,那還算是走運了,不幸的是,當然了,大多數時候都是別人的不幸,很多時候大家都是在為公司寫代碼,寫代碼的人也許早已經離開了公司,但別忘了一句古話,有來有往嘛,為他人,也為我們自己,請為你的代碼加上註釋。   二、不要讓事情複雜化。程序員有時候總是對簡單問題想出複雜的解決方案,比如說,在只有五個用戶的程序中引入EJB、對程序實現了並不需要的框架(framework),之類的還有屬性文件、面向對象解決方案、多線程等等。為什麼要這樣做呢?也許我們並不知道是否這樣會更好,但這樣做也許可以學到一些新東西,或者讓自己更感愛好一些。假如是不知道為什麼這樣做,建議多請教經驗豐富的程序員,假如是為了個人的目的,麻煩讓自己更專業一點。 三、始終牢記——“少即是好(Less is more)並不總是對的”。代碼效率雖然很重要,但在許多解決方案中,編寫更少的代碼並不能改善這些代碼的效率,請看下面這個簡單的例子:                        if(newStatusCode.equals(“SD”) && (sellOffDate == null ||             todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null &&             todayDate.compareTo(lastUsedDate)>0)) ||             (newStatusCode.equals(“OBS”) && (OBSDate == null ||             todayDate.compareTo(OBSDate)<0))){             newStatusCode = “NYP”;             }            能看明白if條件語句是乾什麼的嗎?能想出來是誰寫的這段代碼嗎?假如把它分成兩段獨立的if語句,是不是更輕易理解呢,下面是修改後的代碼:                        if(newStatusCode.equals(“SD”) && (sellOffDate == null ||             todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null [...]

Java Also tagged Leave a comment

JBoss的安裝

JBoss+Tomcat已經成為一個免費的開源的穩定的J2EE服務器,雖然在JBoss中部署J2EE沒有商用J2EE服務器那麼方便,基本都是通過手工編寫XML配置文件,但是這樣可以讓我們更容易理解J2EE的來龍去脈。 注意,正如Tomcat3和Tomcat 4兩個版本差異很大一樣,Jboss 2和Jboss 3兩者差異較大,本處是以Jboss 2為例,建議安裝JBoss 3. Jboss 3安裝其實更簡單,下載解壓就可運行,部署應用方式也一樣。 1.從JBoss主頁httpwww.jboss.org下載JBoss整合tomcat的軟件包. 從ant主頁下載ant用來發布J2EE(.ear)或WEB程序(.war)或Java包(.jar) 2.設置環境變量  JAVA_HOME = cjdk1.4 –假設你安裝Java 2.0 SDK in cjdk1.4  ANT_HOME = Cjakarta-ant-1.4 –假設你安裝in Cjakarta-ant-1.4  JBOSS_DIST = CJBoss_Tomcatjboss –假設你安裝Jboss在CJBoss_Tomcatjboss JBoss 3.0已經沒有jboss這個子目錄   在windows 2000中的設置是需要到控制面板–系統–環境變量中設置 3.設置Path加入%JAVA_HOME%bin;%ANT_HOME%bin以便能夠執行JDK和ANT 4.從httpwww.jboss.orgdocsmanualfilesdocumentation-example.zip下載JBoss應用程序例子.解壓到 CJBoss_Tomcat   —- Examples —應用程序例子安裝目錄 —- Jboss —- Catalina –Tomcat 4.0 從windows的DOS窗口進入examplesbuild目錄執行 ant intro-interest-ear 會出現一系列信息,最後是build succesfully 到examplesbuild-exampleinterest目錄,發現新建立的interest.ear 5.啟動JBoss將interest.ear拷貝到CJBoss_Tomcatdeploy目錄下,在Jboss 3.x中是serverdefaultdeploy目錄。 [...]

Java Also tagged Leave a comment

JAVA“高手”基礎素養

世界上並沒有成為高手的捷徑,但一些基本原則是可以遵循的。 1、紮實的基礎 數據結構、離散數學、編譯原理,這些是所有計算機科學的基礎,如果不掌握它們,很難寫出高水平的程序。程序人人都會寫,但當你發現寫到一定程度很難再提高的時候,就應該想想是不是要回過頭來學學這些最基本的理論。不要一開始就去學OOP,即使你再精通OOP,遇到一些基本算法的時候可能也會束手無策。因此多讀一些計算機基礎理論方面的書籍是非常有必要的。 2、豐富的想像力 不要拘泥於固定的思維方式,遇到問題的時候要多想幾種解決問題的方案,試試別人從沒想過的方法。豐富的想像力是建立在豐富的知識的基礎上,除計算機以外,多涉獵其他的學科,比如天文、物理、數學等等。開闊的思維對程序員來說很重要。 3、最簡單的是最好的 …..

Java, SUN Leave a comment

Oracle收購Sun之後:有關Java未來的三個關鍵問題

我們都已經聽說了有關為什麼Oracle收購Sun的一些猜測:      Oracle一直都想和IBM站在同一水平線上。他們想要被看作是一個完整的供應商,提供應用程序,平台和數據庫。如果你想要,那就是一站式服務。      Oracle已經佔據了應用程序和數據庫的大部分市場。為了保持在這一領域的主要地位,他們想要擴展並深入到硬件業務中。     收購是一項長期的防禦舉動以回應微軟收購SAP的謠言。     雖然收購的原因對很多人來說是很重要的,但是對於我來說最重要的是會在Sun這15年中所創建和服務的Java技術上發生什麼事情。我經常會寫到”Java is COBOL” ,因為今天幾乎所有的商業都有一些Java要做的事情。謠言在應用程序開發行業中漫天飛,但是我們早知道塵埃會落定,故事將會結束。這不意味著我們不能用歷史來引導我們預測未來。 Ruby能否成為第二個Java?     從純粹的Java角度來看一看Oracle所得到的,這三個關鍵問題是:      Java Community Process (JCP)會繼續存在嗎?      Apache Software Foundation (ASF)和Sun之間的爭端會解決嗎?      Oracle會通過為JDK扣交TCKs而取得Java IP嗎?      JCP會繼續存在嗎?      Oracle是JCP的高級成員,而且他們已經提交了80多個Java Specification Requests (JSRs)。儘管有這個長期的參與承諾,Oracle表示——和其他的供應商和參與者一起——JCP過程需要變得更開放,透明並且廠商中立。特別是在2007年12月12日的時候,Oracle提出了這個:Resolution 1 (由Oracle提議,第二個是由BEA提出) .      “Executive Committee感覺到JCP變成一個開放獨立並且是廠商中立的標準組織,那裡所有的成員都參與公平競爭,具體有以下特點:     成員基金開發和管理費用     一個法人實體,有法律,理事會和董事成員等等。     一個新的,簡單的IPR Policy(知識產權政策)允許更大範圍的執行。     嚴格的兼容性要求     致力於促進Java編程模式     此外,EC將在對Java Community干預最小的情況下,盡快實施這個計劃以確保這樣的過渡盡快的實施。 “     所以我們希望Oracle能繼續JCP,但是它可能變成一個完全不同的JCP.如果Oracle成功的實施了所期望的轉變,結果會是非常有趣的而且具有廣泛的影響。特別有趣的是看到Oracle如何實施這些變革。那將是第一個跡象表明Oracle將如何同Java工作。      Apache Software Foundation (ASF)和Sun之間的爭端會解決嗎?客戶端Java的革命性飛躍圍繞Apache和Sun爭論的主要問題是多種多樣的,但是這裡有一個對這些事件的簡短總結:      Apache [...]

Java, Oracle, SCJP, SUN Also tagged , Leave a comment

淺談:Java代碼的優化策略

1.如何使用Exception Exception降低性能。一個異常拋出首先需要創建一個新的對象。 Throwable接口中的構造器調用名為fillInStackTrace()的本地方法。這個方法負責巡檢棧的整個框架來收集跟踪信息。這樣無論何時有異常拋出,它要求虛擬機裝載調用棧,因為一個新的對像在中部被創建。 異常應當僅用於有錯誤發生時,而不要控制流。 2.不要兩次初始化變量 Java通過調用獨特的類構造器默認地初始化變量為一個已知的值。所有的對像被設置成null,integers (byte, short, int, long)被設置成0,float和double設置成0.0,Boolean變量設置成false。這對那些擴展自其它類的類尤其重要,這跟使用一個新的關鍵詞創建一個對象時所有一連串的構造器被自動調用一樣。 3.在任何可能的地方讓類為Final 標記為final的類不能被擴展。在《核心Java API》中有大量這個技術的例子,諸如java.lang.String。將String類標記為final阻止了開發者創建他們自己實現的長度方法。 更深入點說,如果類是final的,所有類的方法也是final的。 Java編譯器可能會內聯所有的方法(這依賴於編譯器的實現)。在我的測試裡,我已經看到性能平均增加了50%。 4.在任何可能的地方使用局部變量 屬於方法調用部分的自變量和聲明為此調用一部分的臨時變量存儲在棧中,這比較快。諸如static,實例(instance)變量和新的對象創建在堆中,這比較慢。局部變量的更深入優化依賴於你正在使用的編譯器或虛擬機。 5.停止小聰明 很多開發人員在腦子中編寫可複用和靈活的代碼,而有時候在他們的程序中就產生額外的開銷。曾經或者另外的時候他們編寫了類似這樣的代碼: public void doSomething(File file) { FileInputStream fileIn = new FileInputStream(file); // do something 他夠靈活,但是同時他們也產生了更多的開銷。這個主意背後做的事情是操縱一個InputStream,而不是一個文件,因此它應該重寫如下: public void doSomething(InputStream inputStream){ // do something 6.乘法和除法 我有太多的東東適用於摩爾法則——它聲明CPU功率每年成倍增長。 “摩爾法則”表明每年由開發者所寫的差勁的代碼數量三倍增加,劃去了摩爾法則的任何好處。 考慮下面的代碼: for (val = 0; val < 100000; val +=5) { shiftX [...]

Java, SCJP, SUN Leave a comment

Java基礎:關於Java編程語言中的內部類說明

提起Java內部類(Inner Class)可能很多人不太熟悉,實際上類似的概念在C++裡也有,那就是嵌套類(Nested Class),關於這兩者的區別與聯繫,在下文中會有對比。內部類從表面上看,就是在類中又定義了一個類(下文會看到,內部類可以在很多地方定義),而實際上並沒有那麼簡單,乍看上去內部類似乎有些多餘,它的用處對於初學者來說可能並不是那麼顯著,但是隨著對它的深入了解,你會發現Java的設計者在內部類身上的確是用心良苦。學會使用內部類,是掌握Java高級編程的一部分,它可以讓你更優雅地設計你的程序結構。下面從以下幾個方面來介紹: 第一次見面 public interface Contents { int value(); } public interface Destination { String readLabel(); } public class Goods { private class Content implements Contents { private int i = 11; public int value() { return i; } } protected class GDestination implements Destination { private String label; private GDestination(String whereTo) { label [...]

SCJP, SUN Also tagged , Leave a comment