Tag Archives: SCJP

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認證考試必讀書籍

我本來只是想要要記錄一下我個人Java 學習過程, 不過我在學習 Java 的過程中碰到了很多問題 看了三本書覺得寫的非常的好所以也想推薦給各位準考生, 看過了這些書後我覺得按照程度這樣看下來是最循序漸進的, 可以依照你們的程度來看看剛開始因為感受到了自己基礎不足, 而且考 SCWCD 前也必須先考過 SCJP….. 點擊下載:Java認證考試書單

Java, SCJD, SCJP, SCWCD, SUN Also tagged , , Leave a comment

分享[考試心得] 我通過SCJP認證考試了

準備參加SCJP考試該如何準備呢?分享一篇關於一位考生考試心得,寫的很詳細現在分享給大家! SCJP考試全名是Sun Certified Programmer for Java, 也就是昇陽公司對Java語言的認證考試。 其實我很早以前就想要考這個認證考試了, 畢竟工作的環境主要就是以Java為主。 不過由於這個考試純粹是個人興趣, 再加上人類特有的拖性, 所以去年買的考試券, 拖到今年快過期沒辦法了, 我才去參加考試。 (不過去年是有準備考TOEIC啦,詳見此篇。這是藉口嗎XP) 就在準備好一陣子之後, 我終於在鳳凰颱風來臨的前夕, 前去SCJP考試中心看看能不能過關。   雖然我買的考試券有允許失敗一次的機會, 也就是萬一第一次沒考過, 還可以考第二次, 但是我還是希望能一次過關啊。   幸好,努力是有代價的。 因為SCJP是上機考試, 所以當考完後, 馬上就可以知道結果。   There are 72 questions in this exam. You answered 68 questions correctly which gives you a score of 94%.PASSING SCORE:59%   YOUR SCORE:94%   TEST STATUS: Pass   [...]

Java, SCJP, SUN Also tagged , 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

新手入門:介紹Java學習的一些主線思路

Java發展到現在,按應用來分主要分為三大塊:J2SE,J2ME和J2EE。 這三塊相互補充,應用範圍不同。 J2SE就是Java2的標準版,主要用於桌面應用軟件的編程; J2ME主要應用於嵌入是系統開發,如手機和PDA的編程; J2EE是Java2的企業版,主要用於分佈式的網絡程序的開發,如電子商務網站和ERP系統。 先學習j2se 要學習j2ee就要先學習j2se,剛開始學習j2se先建議不要使用IDE,然後漸漸的過渡到使用IDE開發,畢竟用它方便嘛。學習j2se推薦兩本書,《java2核心技術一二卷》,《java編程思想》,《java模式》。其中《java編程思想》要研讀,精讀。這一段時間是基本功學習,時間會很長,也可能很短,這要看學習者自身水平而定。 不要被IDE糾纏 在學習java和j2ee過程中,你會遇到五花八門的IDE,不要被他們迷惑,學JAVA的時候,要學語言本身的東西,不要太在意IDE的附加功能,JAVA編程在不同IDE之間的轉換是很容易的,過於的在意IDE的功能反而容易耽誤對語言本身的理解。目前流行的IDE有jbuilder,eclipse和eclipse的加強版WSAD。用好其中一個就可以了,推薦從eclipse入手j2ee。因為Jbuilder更適合於寫j2se程序。 選擇和學習服務器使用配置 當你有了j2se和IDE的經驗時,可以開始j2ee的學習了,web服務器:tomcat,勿庸置疑,tomcat為學習web服務首選。而應用服務器目前主要有三個:jboss、weblogic、websphere。有很多項目開始採用jboss,並且有大量的公司開始做websphere或weblogic向jboss應用服務器的移植(節省成本),這裡要說的是,學習tomcat和jboss我認為是首選,也是最容易上手的。學習服務器使用配置最好去詢問有經驗的人(有條件的話),因為他們或許一句話就能解決問題,你自己上網摸索可能要一兩天(我就乾過這種傻事),我們應該把主要時間放在學習原理和理論上,一項特定技術的使用永遠代替不了一個人的知識和學問。 學習web知識 如果你是在做電子商務網站等時,你可能要充當幾個角色,這是你還要學習: html,可能要用到dreamwave等IDE。 Javascript,學會簡單的數據校驗,數據聯動顯示等等。 J2eeAPI學習 學習j2eeAPI和學習服務器應該是一個迭代的過程。 先學習jsp和servlet編程,這方面的書很多,我建立看oreilly公司的兩本《jsp設計》和《java servlet編程》,oreilly出的書總是那本優秀,不得不佩服。 學習jdbc數據庫編程,j2ee項目大多都是MIS系統,訪問數據庫是核心。這本應屬於j2se學習中,這裡拿出來強調一下。 學習jndi api,它和學習ejb可以結合起來。 學習ejb api,推薦書《精通ejb》 經過上面的這些的學習,大概可以對付一般的應用了。 有人說跟著sun公司的《j2ee tutorial》一路學下來,當然也可以。 學習ejb設計模式和看代碼(最重要) 設計模式是練內功,其重要性可以這麼說吧,如果你不會用設計模式的話,你將寫出一堆使用了ejb的垃圾,有慢又是一堆bug,其結果不如不用ejb實現( ejb不等於j2ee) 無論學習什麼語言,都應該看大量代碼,你看的代碼量不到一定數量,是學不好j2ee的。 目前有很多開源的工程可以作為教材: jive論壇 petstore sun公司 dune sun公司 等等,研讀一個,並把它用到自己的工程中來。 J2ee其他學習 當你漸漸對j2ee了解到一定深度時,你要開始關注當前領域中的一些技術變化,J2ee是一塊百家爭鳴的領域,大家都在這裡提出自己的解決方案,例如structs,hiberate,ofbiz等等,學習這些東西要你的項目和目標而定,預先補充一下未嘗不可,但不用涉及太深,畢竟學習原理和理論是最最重要的事。 目前常見j2eeAPI JavaServer Pages(JSP)技術1.2 Java Servlet技術2.3 JDBC API 2.0 Java XML處理API(JAXP)1.1 Enterprise JavaBeans技術2.0 Java消息服務(JMS)1.0 Java命名目錄接口(JNDI)1.2 Java事務API(JTA) [...]

SCJP, SUN Also tagged , Leave a comment

台北舉行“JAVA認證日”會場報名考試優惠了

目前JAVA認證考試卷的價格是6600,會場當天購買優惠價是5300,詳細可參考一下活動網頁的訊息。 時間:2009年7月31日 地點:台北國際會議中心 活動網址:http://weekly.ithome.com.tw/seminar/jcd2009/ 引用網址:http://itking-sunny.blogspot.com/2009/06/2009-java.html P.S. 上次一個朋友跟我說SCJP已經漲到300美金,我很納悶地去Prometric網站查,果然查到是300美金。不過當我看到JAVA認證日的活動訊息時我才想起,多數人考JAVA都是先去跟恆毅等SUN原廠授權中心買認證試卷而非在Prometric線上刷卡,而買認證試卷的金額目前訂價是台幣6600而非300美金,若在7/31的JAVA認證日購買就是優惠價3500。 這個資訊給近期半年內有要考JAVA認證的朋友,若確定要參加考試先去買來放著可以便宜些。

SCJD, SCJP, SUN Also tagged Leave a comment

SCJP認證信息

Sun Java。考試內容涉及所有Java相關知識、編程概念及applet開發技巧。Sun 認證Java程序員考試旨在觀察您通過應用軟件分配進行復雜編程的能力。之後還要測試您完成編程所需的知識。    認證要求: 學員掌握如何使用標準Java Development kit,V1.2 (JDK)或V1.4(JDK)開發應用程序和applets。學會Java語言的語法;如何使用Java來創建圖形用戶接口(GUI),事件處理機制,例外處理,通過設計與開發各種Java程序來獲得實際的編程經驗;您也將學到文件輸入/輸出(I/O);多線程和網絡的知識。    通過認證將證明您能夠:認證是業界唯一經Sun授權的Java認證 1.使用Java編程語言創建Java應用程序和applets 2.定義和描述垃圾搜集,安全性和Java虛擬機(JVM) 3.描述和使用Java語言面向對象的特點 4.開發圖形用戶接口(GUI)。利用Java支持的多種布局管理 5.描述和使用Java 1.2的事件處理模式 6.使用Java語言的鼠標輸入,文本,窗口和菜單窗口部件 7.使用Java的例外處理來控制程序執行和定義用戶自己的例外事件 8.使用Java語言的先進的面向對象特點,包括方法重載,方法覆蓋,抽象類,接口,final,static和訪問控制 9.實現文件的輸入/輸出(I/O) 10.使用Java語言內在的線程模式來控制多線程

SCJP, SUN Leave a comment

SUN認證常識

Sun在 UNIX領域一直是技術上和市場占有率的領先者;近年來推出的Java技術,更成為業界的標準。所以Sun公司所舉辦的認證考試,必然成為Java和UNIX在全球信息界公認的標準。Sun推出的專業認證包括下列三種: 1.Java認證考試:  對於Java程序設計員,Sun推出兩項認證:Sun Certified Java Programmer(SCJP)和Sun Certified Java Developer(SCJD)。310-027SCJP測驗Java程序設計概念及能力,內容偏重於Java語法及JDK的內容;SCJD則進一步測試用Java開發應用程序的能力,考試者必須先完成一個程序的設計方案,再回答與此方案相關的一些問題。 2.Solaris系統管理認證考試:  對Solaris/Sun OS系統管理員,Sun推出Certified Solaris Administrator(CSA)。CSA分別為兩個等級(Part I 和 Part II ),測試對Solaris 系統管理的了解程度。 3.Solaris網絡管理認證考試:  為了測試使用者對於Solaris網絡的管理能力,Sun還特別推出Certified NetworkAdministrator(CNA). 內容包括基本網絡概念、 Routing and Subnet、Security、Performance、DNS、NIS+等通過SUN任何一門專業認證後,將全收到Sun Microsystems 總公司寄發的資格證及徽章,並有權將通過Sun認證的標記印在個人名片上,作為個人技術能力的肯定。 SUN認證JAVA程序員 眾所周知,Java以其獨有的開放性,跨平臺性和面向網絡的交互性席卷全球,以其安全性、易用性和開發周期短的特點,迅速從最初的編程語言發展成為全球第二大軟件開發平臺。這些優點已引起國內外計算機界的極大關註;Java公用規範(PAS)已被國際標準化組織(ISO)認定,Java技術已列為當今世界信息技術三大要點之一。  Sun Java認證是業界唯一經Sun授權的Java認證。考試內容涉及所有Java相關知識、編程概念及applet開發技巧。Sun 認證Java程序員考試旨在觀察您通過應用軟件分配進行復雜編程的能力。之後還要測試您完成編程所需的知識。每次考試都包括65道以上的選擇題,時間大約為90分鐘。 課程:SL-275 JAVA語言編程 本課程是使學員掌握如何使用標準Java Development Kit,V1.1 (JDK) 開發應用程序和applets。在本課程中您將學會Java語言的語法。如何使用Java 來創建圖形用戶接口GUI,事件處理機制, 例外處理,通過設計與開發各種Java 程序來獲得實際的編程經驗.您也將學到文件輸入/輸出(I/O)、 多線程和網絡的知識.。本課程適用於熟悉C或C++的編程人員,也適用於想參加Sun Java 認證考試的各位考生。

SCJD, SCJP, SUN Also tagged , Leave a comment

簡述SUN認證

Sun公司為了為業界建立一套認證的標準,特別針對最先進的科技,推出Java及Solaris 技術認證方案。根據這些認證,在企業方面可以藉此作為招聘人才的評判標準,或是作為衡量員工技術水準的依據;在技術方面,通過這些認證也可以證明個人的技術能力。 Sun在 UNIX領域一直是技術上和市場占有率的領先者;近年來推出的Java技術,更成為業界的標準。所以Sun公司所舉辦的認證考試,必然成為Java和UNIX在全球信息界公認的標準。Sun推出的專業認證包括下列三種: Java認證考試 對於Java程序設計員,Sun推出兩項認證:Sun Certified Java Programmer (SCJP)和Sun Certified Java Developer(SCJD)。SCJP測驗Java程序設計概念及能力,內容偏重於Java語法及JDK的內容;SCJD則進一步測試用Java 開發應用程序的能力,考試者必須先完成一個程序的設計方案,再回答與此方案相關的一些問題。 Solaris系統管理認證考試 對Solaris/Sun OS系統管理員,Sun推出Certified Solaris Administrator(CSA)。CSA分別為兩個等級( Part I 和 Part II ),測試對Solaris 系統管理的了解程度。 Solaris網絡管理認證考試 為了測試使用者對於Solaris網絡管理能力,Sun推出Certified Network Administrator(CNA)。內容包括基本網絡概念、Routing and Subnet、Security、Performance、DNS、NIS+等。通過SUN任何一門專業認證後,將全收到Sun Microsystems 總公司寄發的資格證書及徽章,並有權將通過Sun認證的標記印在個人名片上,作為個人技術能力的肯定。 java開發員認證Sun Certified JAVA Deverloper(SCJD) java開發員的認證考試以Sun指定的javaSL-285為教材,機考部分的考試號為310-027。Java開發員的認證考試: Java開發員的考試分程序設計和機考兩部分。其中,程序設計部分不限時。考生報名後,可從指定的網址下載考試題目,並根據題目要求進行程序設計。在指定的時間段(1年)內,考生須傳回自行設計的java程序。

SCJD, SCJP, SUN Also tagged Leave a comment

從C++轉到Java需注意的地方

1.Java在虛擬機上運行 Java源代碼並不是被編譯成為普通的機器代碼。而是被翻譯成為虛擬機可以執行的代碼。一個Java解釋器最終執行這些代碼。這其中沒有連接的過程;解釋在需要的時候動態的加載一些類; 2.Java是完全面向對象的 Java是一種完全面向對象的語言。這意味著你對任何一個Java對象所做的動作都是通過一個方法實現的。第一點就是,再也沒有沒有主函數這樣的孤立的東西了。取而代之的是,你必須開始用一個對象的看法看待一個程序,一個類的對象。但是這個對象又什麼對象呢?大多數Java程序只是簡單的通過繼承Java基礎類Object來實現所需要的東西,但是你可以通過創建程序基礎類用於多個特性相似的應用程序來節省時間。 嚴格的面向對象的規定意味著理用原有的C/C++代碼不可以直接不加改動的使用;系統調用也是這樣的。 C++中,你可以通過在C++正常的命名空間外聲明extern”C”來使用原有的C的過程調用,包括系統調用 在Java中,只有一個類似的安全回溯的方法,但是並不是十分簡單的方法。你必須定義一個本地方法,其目的是為C語言提供接口,然後提供連接的介質。 Java環境提供了完成這種任務的工具,但是整個過程和C++中提供的extern比微不足道,完成使用C++類的過程則更加複雜,因為這樣會引入對C的藉口和C函數和C++成員函數的問題。 幸運的是,許多常用的系統實用工具函數已經在系統類中的方法中提供出來,但是這些明顯沒有包含經過許多年來你所創建的那些類和過程。所以,在你需要的時候你應該去鑽研一下。 3.Java中沒有獨立的頭文件 在Java中,關於類的一切東西都被放到一個單獨的文件中。方法的位置只可能在一個地方出現,一個方法的實現必須在它的定義過程中同時進行。這樣做得優點是在實現程序的時候不容易因為文件的非同步錯誤而失敗,或者獲取到一個沒有實現的聲明。類的聲明可以被Java解釋器利用甚至是從一個編譯過的單元中獲取,所以不再需要有頭文件,只要有編譯過的文件。 這樣做的缺點與我們編程的過程有關。許多C++程序員喜歡用頭文件來代替文檔。要看一個成員函數的接口參數,只需要看頭文件中的聲明即可。你可以經常的看頭文件即可了解怎樣去使用這個類。在Java中,沒有這樣的總結。因為實現類方法的代碼必須在方法定義的時候出現,而且,對於一個單獨的函數的代碼來說就經常佔據了一整頁乃至更多。這樣,很難通過看Java的代碼就初步了解類是怎樣使用的。你必須為你需要的類準備足夠多的文檔。不言而喻,再處理非商業類庫的時候文檔是極度缺乏的。 在當先的Java環境中提供了兩個工具來補償這些,javap來打印類標識,javadoc為嵌入式程序提供HTML文檔。 4.用Package來分解Java命名空間 在大的C++工程中經常遇到的一個問題是命名空間–怎樣保證工程的一些程序員不會創建和另一些程序員一樣名字的類?更糟糕的是,供應商可能會提供一個包含和你的類一樣名字的類的庫。有許多方法可以解決這一問題,但是很可能在問題發現之前工程已經啟動,改正錯誤是需要付出許多痛苦的。 Java通過”Package”這個概念解決了這個問題,Package有效地通過通過集合類劃分了命名空間。在不同包內的兩個同名的類仍然是不同的。關鍵問題就變成了類是否放置到相應的包中。 記住,Java並沒有解決命名衝突的問題。擴展一個基類而引起了派生類的衝突。比如說,如果你最喜歡的供應商提供了一些類,然後你把它們用做基類並且派生有一個foo方法的類,當供應商提供一個新版本的類的時候就可能出現,如果供應商業也在新類中提供了一個foo的方法。 5.異常是Java的重要特性 在C++中,異常和異常處理是十分深奧的事情;許多C++程序員從沒有處理過它們甚至不知道它們是何物。異常是在正常的過程中出現的未預料的錯誤,因此,它們不會從方法中返回,或者作為參數傳入;但是,它們不能被忽略!這裡的一個例子是計算一個書的方根的方法。正常的接口形式是將一個正數作為參數傳入方法,然後方法會返回一個正實數作為結果,方法可以檢驗這些並且在異常產生的時候拋出異常。在大多數係統中,程序員並不是必須這樣做,這樣,一個沒有考慮到的異常可以使程序不正常的退出。 在Java中,異常已經成為語言中非常成熟的部分。方法的說明中就包含了異常的信息,程序處理器也強制檢驗如果你使用了一個能夠產生異常的方法,你就必須檢查異常是否發生。幾乎所有的Java程序員都會遇到異常的情況,因為許多非常有用的庫中的類都會拋出異常。處理異常並不難,但是在一些時候是需要注意的。一個方法的文檔會指明方法拋出的異常的類型。如果你忘了,不要緊,編譯器會提醒你的。    6.字符串不再是字符數組 Java中包括了一個字符串的對象,並且是個常量。字符串不像字符數組一樣,雖然可以簡單的從一個字符數組構造一個字符串。你應該盡可能的用字符串代替字符數組,因為他們不會因為誤操作而被覆蓋。 7.Java限制了常量對象和方法 在C++中,你可以正式的聲明一個函數參數或者函數返回值為const類型,這樣可以有效的防止對參數或者返回值的不正當修改。另外,你可以聲明一個成員函數為const,表明它不可以修改任何他操作的對象。 Java支持常量操作符,只讀變量,這些通過final關鍵字實現。但是Java沒有支持強制的使一個可寫變量在函數傳遞、返回的過程中變為只讀。或者定義一個不操作修改對象的常量方法。 在Java中,這個省略帶來的影響和在C++中相比就非常小了,這很大程度上因為字符串變量和字符數組的不同,但是這也帶來一個引起錯誤的隱患。特別地,沒有辦法檢驗一個方法是否可以改動對象。 8.Java沒有指針 理解指針的概念是一個C或C++程序員最難應付的問題。指針也是錯誤產生的一大根源。 Java中沒有指針,對象的句柄直接作為參數傳遞,而不是傳遞指針。另外,你必須通過索引使用數組。這些都不是什麼大問題。然而,沒有指針是在寫含有函數指針或者成員函數指針的系統的時候引起很大麻煩。這個問題在處理回調函數的時候更加顯著。 9.Java沒有參數化類型 參數化類型提供了用一段程序處理許多相似程序的方法。一個例子就是開平方根的方法,它可以對int或者float操作。在C++中,這一特性是由模板提供的。 Java中不包含C++中的模板的等價物。如果你經常使用模板來簡化程序,比如說構造許多使用相似參數類型的函數,這簡直就是災難。這意味著更多使用複制、粘貼的過程來手動的完成。然而,如果你使用模板來生成類的話,沒有簡單的方法。 10.Java使用垃圾回收 在垃圾回收的語言中,運行時環境一直監測哪些內存不被使用。當一塊內存不用的時候,系統自動的回收內存。比如說,一個對像在一個方法中生成,但是沒有被調用著返回或者沒有儲存為全局變量,不能在方法外部使用。系統自己會知道哪些變量是你用不到的,哪些是可以用到的。因此,你不必再為破壞對象回收內存而擔心。在C++中,很多的調試時間都被使用到檢查內存漏洞中。 Java的這種方法很大程度上降低了這種錯誤的可能。但是他依然不能處理邏輯混亂的程序,他們不能夠被回收。許多C++的類中的析構函數是用來釋放對象引用的內存的。 Java使垃圾回收的事實說明在Java中不是必需寫析構函數了。但是並不意味著你可以忘記為你的類寫析構函數。比如,一個對像打開了網絡連接就必須被恰當的清理來關閉這個連接。在Java中,析構函數被稱作”finalization”方法。 11.Java不支持多重繼承 在任何一個複雜的面向對象的系統中,實現一個有更多方法的新類是十分經常遇到的事情。比如說,一個Manager類,需要被作為一個連表的表頭,但是一個Manager又必須是一個Employee。有許多方法來處理這樣的問題。一個方法是允許從多個類繼承。在這個例子中,Manager需要從Linked List和Employee繼承。 Java沒有多重繼承。但是你可以聲明接口–來描述實現一些功能的編程接口。一個類可以由多個接口實現,包括他唯一的功能。不同的類可以由同樣的接口實現。方法的參數既可以聲明為類,也可以聲明為接口。如果是接口的話,實現接口的類就可以作為參數傳入方法。 接口的概念要比多繼承容易理解一些,但是他有一定的局限性。特別地,你必須在類中實現接口的時候編碼去重新實現類的功能。 12.Java支持多線程 多線程可以使你寫出在同一時刻完成多種任務的程序。比如說,你可以在完成讀取一個大文件之間允許用戶對已經讀取的部分進行編輯。你需要把程序分為多線程來執行。為安全起見。你的程序要被精心的設計,因為可能不止一個線程需要對數據進行訪問、修改。 Java開始就支持多線程。類和接口用來分解一個程序成為不同的線程。語言簡單的對重要的數據作同步或者鎖定處理。 13.Java以一些預定義的類為基礎 默認的Java環境中包括一些從Java基礎類實現而來的一些包。這些允許你很快的寫出一些有用的程序,這些包如下: java.awt:當今許多應用程序都非常依賴GUI,java提供了一個Abstract Window Toolkid,這可以讓你在不考慮運行平台的前提下處理GUI對象。 java.applet:applet的主要目的是提供瀏覽有關的內容。它本身是awt組件的字類並且支持其他一些特性,比如聲音、渲染等。    java.io:java.io提供了對流、文件、管道的讀寫操作。 java.lang:提供了java的基礎類Objcet,Integar,Float……; java.net:提供對網絡編程的支持。包括處理socket,URL,Internet尋址等。 [...]

SUN Also tagged Leave a comment