本認證可為使用Java技術從事應用程式開發或軟體專案管理工作提供理想的入門管道。本認證將驗證 OO 概念的基本知識、Java 程式設計以及 Java 平台與技術的一般知識。要獲得此認證,受測者必須成功完成一個測驗。請透過以下連結瞭解詳細資訊、測驗目的並進行購買:
310-019:Sun Certified Associate.Java Platform.Se. Exam Version 1.0
認證描述:
Sun助理認證的標準版Java平臺,310-019考試,1.0版考試認證提供使用Java技術到應用程序開發或軟件項目管理的職業入門。這個全球性的證書驗證了面向對象的基本知識,面向對象的UML概念,Java編程語言和Java平臺和技術的壹般知識。這門考試的考生包括:入門級的Java程序員,學習想成為Java程序員的學生,項目或項目經理與Java軟件開發行業的技術工作者。
在網站上購買的考試只能在美國使用。如果您居住在美國以外地區請選擇壹個國家,詢問在您的國家提供的產品。只可在壹個授權Prometric考試中心參加考試,壹旦購買考試券後,妳使用考試券的有效期為壹年時間。請註意考試券不再以任何理由退還。
詳細信息:
考點地區:授權Prometric考試中心
首要條件:無
其他考試/為這項認證所需的任務:無
考試類型:多選題和拖放
問題數量:51
評分標準:68%(51個問題中超過35個正確)
考試時間:115分鐘
2010-05-14 (Fri) 1:53 | Posted in Java | admin
Java應用:Fedora Linux 8系統下配置JDK
1. 到sun.com下載jdk-6u4-linux-i586.bin,假設下載到當前用戶目錄下;
2. 在/home/abin下建立software目錄,拷貝jdk-6u4-linux-i586.bin到software目錄;
3. 找開終端,轉到/home/abin/software,執行命令sh jdk-6u4-linux-i586.bin,屏幕會顯示壹些協議文件,壹路回車,到最後會認妳確認安裝,輸入yes,回車,稍等片刻……,會在/home/abin/software下生成壹個文件夾jdk1.6.0_04,這就是jdk的安裝目錄。
好,下面開始設置jdk的環境變量:
4. 如果只供當前用戶使用,那麽進入當前用戶目錄,即(/home/abin),編輯。bashrc文件,在最後加入環境變量,如下:
QUOTE:
JAVA_HOME=/home/abin/software/jdk1.6.0_04
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
5. 如果要讓所有用護使用,那麼以root用護登錄,進入/etc目錄,在profile文件末添加以上環境變量。
註:在設置環境變量時需註意幾點
a)首先是環境變量的格式,以前在windows下設置時路徑間用分號隔開,在linux下要用冒號;
b)其次,要查看系統中是否已存在需設置的變量,如果有,則必須在同名的變量後加上”:$變量名”,例如,如果以前系統中存在PATH變量,則在設置PATH變量時必須寫成PATH=$JAVA_HOME/bin:$PATH,不然最後設置的內容會覆蓋掉以前的內容。
查看系統中是否存在同名變量,可以使用echo命令,格式如下:echo $PATH
6. 設置完成後,在終端輸入java -version 會顯示JDK版本信息,表示安裝成功。
2009-11-20 (Fri) 20:03 | Posted in Sun | admin
SUN認證是給網絡設計界建立的壹套認證標準,Sun公司推出了Java以及Solaris技術認證方案。對於企業而言,可以借助這項認證作為招聘人才的評判標準,或是作為衡量員工技術水準的依據;在個人方面,通過這些認證也可以證明個人的技術能力。
SCJP就是屬於SUN認證的一種,要想獲得SCJP,就必須要通過310-065考試。
現在有部份310-065的考題如下,如果要獲得更多的信息,請訪問http://www.51-pass.com/SUN.html。
19. Which Man class properly represents the relationship “Man has a best friend who is a Dog”?
A. class Man extends Dog { }
B. class Man implements Dog { }
C. class Man { private BestFriend dog; }
D. class Man { private Dog bestFriend; }
E. class Man { private Dog<bestFriend>; }
F. class Man { private BestFriend<dog>; }
Answer: D
20. Given:
1. package test;
2.
3. class Target {
4. public String name = “hello”;
5. }
What can directly access and change the value of the variable name?
A. any class
B. only the Target class
C. any class in the test package
D. any class that extends Target
Answer: C
2009-11-08 (Sun) 19:43 | Posted in SCJP | admin
SUN認證是給網絡設計界建立的壹套認證標準,Sun公司推出了Java以及Solaris技術認證方案。對於企業而言,可以借助這項認證作為招聘人才的評判標準,或是作為衡量員工技術水準的依據;在個人方面,通過這些認證也可以證明個人的技術能力。
8. Given:
1. public class Barn {
2. public static void main(String[] args) {
3. new Barn().go(”hi”, 1);
4. new Barn().go(”hi”, “world”, 2);
5. }
6. public void go(String… y, int x) {
7. System.out.print(y[y.length - 1] + ” “);
8. }
9. }
What is the result?
A. hi hi
B. hi world
C. world world
D. Compilation fails.
E. An exception is thrown at runtime.
Answer: D
9.Given:
1. class Nav{
2. public enum Direction { NORTH, SOUTH, EAST, WEST }
3. }
4. public class Sprite{
5. // insert code here
6. }
Which code, inserted at line 14, allows the Sprite class to compile?
A. Direction d = NORTH;
B. Nav.Direction d = NORTH;
C. Direction d = Direction.NORTH;
D. Nav.Direction d = Nav.Direction.NORTH;
Answer: D
12. Given:
1. public class Rainbow {
2. public enum MyColor {
3. RED(0xff0000), GREEN(0×00ff00), BLUE(0×0000ff);
4. private final int rgb;
5. MyColor(int rgb) { this.rgb = rgb; }
6. public int getRGB() { return rgb; }
7. };
8. public static void main(String[] args) {
9. // insert code here
10. }
11. }
Which code fragment, inserted at line 19, allows the Rainbow class to compile?
A. MyColor skyColor = BLUE;
B. MyColor treeColor = MyColor.GREEN;
C. if(RED.getRGB() < BLUE.getRGB()) { }
D. Compilation fails due to other error(s) in the code.
E. MyColor purple = new MyColor(0xff00ff);
F. MyColor purple = MyColor.BLUE + MyColor.RED;
Answer: B
2009-11-04 (Wed) 19:17 | Posted in Sun | admin
310-065全稱Sun Certified Programmer for the Java 2 Platform. SE6.0 ,屬於SUN SCJP認證考試
5. Given:
1. class PingPong2 {
2. synchronized void hit(long n) {
3. for(int i = 1; i < 3; i++)
4. System.out.print(n + “-” + i + ” “);
5. }
6. }
7. public class Tester implements Runnable {
8. static PingPong2 pp2 = new PingPong2();
9. public static void main(String[] args) {
10. new Thread(new Tester()).start();
11. new Thread(new Tester()).start();
12. }
13. public void run() { pp2.hit(Thread.currentThread().getId()); }
14. }
Which statement is true?
A. The output could be 5-1 6-1 6-2 5-2
B. The output could be 6-1 6-2 5-1 5-2
C. The output could be 6-1 5-2 6-2 5-1
D. The output could be 6-1 6-2 5-1 7-1
Answer: B
6. Given:
1. public class Threads4 {
2. public static void main (String[] args) {
3. new Threads4().go();
4. }
5. public void go() {
6. Runnable r = new Runnable() {
7. public void run() {
8. System.out.print(”foo”);
9. }
10. };
11. Thread t = new Thread(r);
12. t.start();
13. t.start();
14. }
15. }
What is the result?
A. Compilation fails.
B. An exception is thrown at runtime.
C. The code executes normally and prints “foo”.
D. The code executes normally, but nothing is printed.
Answer: B
7. Given:
1. public abstract class Shape {
2. private int x;
3. private int y;
4. public abstract void draw();
5. public void setAnchor(int x, int y) {
6. this.x = x;
7. this.y = y;
8. }
9. }
Which two classes use the Shape class correctly? (Choose two.)
A. public class Circle implements Shape {private int radius; }
B. public abstract class Circle extends Shape { private int radius; }
C. public class Circle extends Shape { private int radius; public void draw(); }
D. public abstract class Circle implements Shape { private int radius; public void draw(); }
E. public class Circle extends Shape { private int radius; public void draw() {/* code here */}
F. public abstract class Circle implements Shape { private int radius; public void draw() { /* code here */ }
Answer: BE
2009-11-01 (Sun) 19:57 | Posted in Sun | admin
1. Given:
1. public class Threads2 implements Runnable {
2.
3. public void run() {
4. System.out.println(”run.”);
5. throw new RuntimeException(”Problem”);
6. }
7. public static void main(String[] args) {
8. Thread t = new Thread(new Threads2());
9. t.start();
10. System.out.println(”End of method.”);
11. }
12. }
Which two can be results? (Choose two.)
A. java.lang.RuntimeException: Problem
B. run. java.lang.RuntimeException: Problem
C. End of method. java.lang.RuntimeException: Problem
D. End of method. run. java.lang.RuntimeException: Problem
E. run. java.lang.RuntimeException: ProblemEnd of method.
Answer: DE
2. Which two statements are true? (Choose two.)
A. It is possible for more than two threads to deadlock at once.
B. The JVM implementation guarantees that multiple threads cannot enter into a deadlocked state.
C. Deadlocked threads release once their sleep() method’s sleep duration has expired.
D. Deadlocking can occur only when the wait(), notify(), and notifyAll() methods are used incorrectly.
E. It is possible for a single-threaded application to deadlock if synchronized blocks are used incorrectly.
F. If a piece of code is capable of deadlocking, you cannot eliminate the possibility of deadlocking by
insertinginvocations of Thread.yield().
Answer:AF
3. Given:
1. void waitForSignal() {
2. Object obj = new Object();
3. synchronized (Thread.currentThread()) {
4. obj.wait();
5. obj.notify();
6. }
7. }
Which statement is true?
A. This code can throw an InterruptedException.
B. This code can throw an IllegalMonitorStateException.
C. This code can throw a TimeoutException after ten minutes.
D. Reversing the order of obj.wait() and obj.notify() might cause this method to complete normally.
E. A call to notify() or notifyAll() from another thread might cause this method to complete normally.
F. This code does NOT compile unless “obj.wait()” is replaced with “((Thread) obj).wait()”.
Answer: B
2009-10-30 (Fri) 20:46 | Posted in SCJP | admin
為了給業界建立壹套認證的標準,Sun公司推出了Java以及Solaris技術認證方案。對於企業而言,可以借助這項認證作為招聘人才的評判標準,或是作為衡量員工技術水準的依據;在個人方面,通過這些認證也可以證明個人的技術能力。目前Sun在中國推出的認證考試項目如下:
1.Java認證考試
該認證主要面對Java程序員。同時,該認證是業界唯壹經Sun授權的Java認證,考試內容涉及所有Java相關知識、編程概念及applet開發技巧。Sun認證Java程序員考試旨在觀察您通過應用軟件分配進行復雜編程的能力,之後還要測試您完成編程所需的知識。每次考試都包括65道以上的選擇題,時間大約為90分鐘。目前在這方面有兩項認證:Sun Certified Java Programmer(SCJP)和 SunCertifiedJava Developer (SCJD)。SCJP測驗Java程序設計概念及能力,內容偏重於Java語法及JDK的內容;SCJD則進壹步測試用Java開發應用程序的能力,考試者必須先完成壹個程序的設計方案,再回答與此方案相關的壹些問題。
2. Solaris系統管理認證考試
對Solaris/Sun OS系統管理員,Sun推出Certified Solaris Administrator(CSA)。CSA分別為兩個等級(Part Ⅰ和 Part Ⅱ),測試對Solaris系統管理的了解程度。
3. Solaris網絡管理認證考試
為了測試使用者對於Solaris網絡管理能力,Sun推出Certified Network Administrator(CNA)。內容包括基本網絡概念、Routing and Subnet、Security、Performance、DNS、NIS+等。
通過SUN任何壹門專業認證後,考生將收到SunMicrosystems總公司寄發的資格證書及徽章,並有權將通過Sun認證的標記印在個人名片上,作為個人技術能力的肯定。
2009-09-24 (Thu) 20:04 | Posted in Sun | admin
1982年,Sun Microsystems公司誕生於美國斯坦福大學校園。Sun公司1986年上市,在NASDAQ的標識為SUNW。
SUN公司的Java技術培訓和認證不僅是Java開發技術領域最權威的認證,同時也是開發類認證中很重要的壹種,我們在這裏將為妳介紹SUN的各種Java認證的關系以及取得這些認證的方法。 SUN公司的Java技術認證包括4種:
Sun Certified Java Programmer(SCJP)
Sun Certified Java Developer(SCJD)
Sun Certified Web Component Developer for Java 2 Platform Enterprise Edition
Sun Certified Enterprise Architect for J2EE Technology
其中SCJP 以及SCJD 是Java開發技術的基礎及核心培訓/認證,隨著Java技術的發展,現在這兩個認證面向的是新的Java2技術(現在國內的Java認證培訓中心也都是按照Java2技術標準授課了),因此其正式的名稱應該分別是:Sun Certified Java2 Programmer 以及 Sun Certified Java2 Developer, 或者稱為 Sun Certified Programmer for Java 2 Platform 以及 Sun Certified Developer for Java 2 Platform,認證和培訓的意義都是壹樣的,為了簡單清楚,我們還是把這兩個認證稱為SCJP 和SCJD。
SCJP 可以說各種Java 認證的基礎,其對應的最主要的學習課程是壹門Java的基礎課程,也就是Java Programming Language (SL-275),這也是國內的SCJP培訓的標準課程。而SCJD 則可以看做是高級的Java技術培訓認證,其要求和難度都要高於SCJP,而且,如果妳計劃獲得SCJD認證,比如先獲得SCJP認證資格。
SCJP 的學習/考試過程是相對相對比較明確的,首先妳需要報名參加SUN指定的Java培訓中心的培訓課程(費用大致在2500-3000人民幣),培訓後向Sun培訓部購買準考證(Certification Voucher,費用現在是1250元),然後在指定的考試中心參加考試。通過後獲得Sun頒發的認證證書。
獲得SCJD認證的過程相對復雜壹些,Sun建議的SCJD學習課程是Java Progeamming Language Workshop(SL-285),當然,學習Java妳還可以參考Sun的壹個面向對象的教程:Object-Oriented Analysis and Design (00-226)。 獲得SCJD認證並不是直接參加考試通過獲得,首先,妳必須是SCJP,在申請SCJD的認證的時候,需要先參加壹個程序設計測試(費用現在是2100元),這個測試基本上是給妳壹個實際應用案例,然後妳用Java進行實現,要註意的是這個測試主要考察的的是妳以Java技術開發壹個工程的總體能力,而不是考察妳的編程技巧。這個編程測試是不限制時間的。
如果妳通過了上述編程測試,那麽就恭喜妳了,妳已經通過了得到SCJD認證的最難的壹關,接下來妳要再參加壹個考試(費用現在是1250元),但是與SCJP考試不同的是,SCJD的考試是簡答題而不是選擇題,如果妳的正確率在70%以上,就可以獲得SCJD認證了。
從上面的敘述妳也可以看出,獲得SCJD認證絕對不是壹個簡單的過程,其難度是很大,獲得SCJD認證可以說證明妳在Java開發技術方面的造詣以及軟件工程方面的知識水平都是很高的,可以勝任復雜的大型軟件開發工作。可以說,SCJD認證的“含金量”是很高的。
Sun Certified Enterprise Architect for J2EE Technology (SCAJ)認證的難度也不小,妳需要經過三關:1是壹個48道選擇題的考試,2是與SCJD類似的程序設計考試,3是壹個4道題的簡答題考試,其學習課程主要有兩個:00-226 Object-Oriented Analysis and Design 以及 SL-425 Architecting and Designing J2EE Applications 。
Sun Certified Web Component Developer for Java 2 Platform Enterprise Edition(J2EE)是SUN最新推出的Java認證考試,主要面向使用Java serverlet 以及JSP技術開發Web應用程序的相關技術認證。
2009-09-20 (Sun) 19:28 | Posted in Sun | admin
Java號稱提供了強大的io控制,恩,實際上也確實挺強大的。但是,面對著那麽多的io類,開始的時候會有些頭暈。
Java為了使用盡量少的類提供盡量強大的io功能,在io設計的時候采用了Decorator也就是中文中的裝飾模式。裝飾模式是在不必改變原類文件和使用繼承的情況下,動態的擴展壹個對象的功能。它是通過創建壹個包裝對象,也就是裝飾來包裹真實的對象。沒學過設計模式不要緊,從名稱上就能感知1,2了。簡單來說,就是包裝,外掛,以使其除了本身的基本功能使外同時可以具有壹些客戶需要的特定功能。基本功能由本體Component實現。包裝,外掛由Decorator來實現。下面是Decorator的UML圖。
看不懂也沒有關系,有壹個比較簡單的示意圖。
Decorator1
Decorator2
Component
就是壹層壹層的包裝,還是比較容易理解的吧?好了,先記住上面這個比較容易理解的圖例吧。接下來我們先給Java的io歸歸類。
Java的io裏面最基礎的是InputStream,OutputStream,Reader,Writer,其中Stream讀取的是單字節,它將數據讀取到byte[]裏面,它讀取的是字符對應的acsii碼。Reader,Writer讀取的是雙字節,它讀取的是實際的字符,它可以設定采取什麽編碼來進行讀寫,它提供了readLine()方法。
好了,基礎的兩大陣營出來了,讀取ascii碼的Stream與讀取實際字符的XXXer。
然後是壹些前綴,常用的有Buffered,File,那麽前綴後綴連接起來,這個io類的功能就出來了。BufferedInputStream就是提供緩沖功能支持的讀取ascii碼的類,FileInputStream就是從文件讀取ascii碼的類,那麽誰是實體,誰是裝飾,很明顯。
我們頭腦裏要有壹個最基礎的概念,就是總要有壹個什麽類來負責跟具體的標準輸入輸出(比如文件,比如控制臺)打交道,實現這個最基本的跟便準輸入輸出打交道的類就是Component,再此之上,我們需要的功能就要考慮是否有對應的Decorator幫忙實現,比如緩沖功能。然後,就很簡單了。
BufferedInputStream bis = new BufferedInputStream(new FileInputStream());
壹層壹層的包裝,包裝多少層隨便妳,我們要做的就是確認我要跟文件打交道,那麽FileInputStream是最基本的,需要被包裝的,其他需要的功能,去查找那各類實現了這個功能,然後包裝壹下就OK了。
另外還有壹個事情是我們需要知道的。Stream跟XXXer兩大陣營,他們各自提供各自的功能,但是他們可能需要溝通,這裏Java的io提供了StreamXXXer類,比如
new InputStreamReader(System.in); 這樣就可以直接從控制臺讀取字符或者輸入行內容了。
2009-09-17 (Thu) 20:57 | Posted in Sun | admin
目前 Java 相關的認證有四個,分別是 SCJP、SCWD、SCJD、SCAJ,考試時皆以英文出題,但在臺灣 SCJP 考試可以選擇使用繁體中文版考題。這幾項認證考試的特點分述如下:SCJP (Sun Certified Java Programmer ):測試 Java 程序設計的觀念和能力,內容偏重於 Java 語法和 JDK 內容。共59題復選及填充,時間2小時,答對61%是及格。
SCWD (Sun Certified Web Component Developer for J2EE Platform ):內容涵蓋 Servlet 與 JSP 。考題為 60 題復選及填充,時間 2 小時,答對 70% 是及格標準。SCJD (Sun Certified Java Developer ):測試 Java 軟件開發的進階技能,考試分成兩階段, 第壹階段是程序設計題,時間無限制,答對 80% 以上就可以進入第二階段應試。SAS10 310-202最新考古題下載 第二階段是 5-10 題簡答題,時間 90 分鐘,答對 70% 以上即可得到 SCJD 認證。SCAJ (Sun Certified Enterprise Architect for J2EE ):測試對於 J2EE 架構的熟悉程度以及系統整合的能力。本考試分成三個階段,第壹個階段是 48 題復選題,時間 75 分鐘,答對 68% 以上方可進入下階段。第二階段是系統設計專題,無時間限制,答對 70% 以上方可進入下壹階段。第三階段是四題申論題,應試時間 90 分鐘。
2009-08-22 (Sat) 3:19 | Posted in Sun | admin