第一篇:java程序員應掌握的十項技能
一個熟練的Java程序員應該掌握的十項技術(shù)
1、語法:Java程序員必須比較熟悉語法,在寫代碼的時候IDE的編輯器對某一行報錯應該能夠根據(jù)報錯信息 知道是什么樣的語法錯誤并且知道任何修正。
2、命令:必須熟悉JDK帶的一些常用命令及其常用選項,命令至少需要熟悉:appletviewer、HtmlConverter、jar、java、javac、javadoc、javap、javaw、native2ascii、serialver,如果這些命令你沒有全部使用過,那么你對java 實際上還很不了解。
3、工具 :必須至少熟練使用一種IDE的開發(fā)工具,例如Eclipse、Netbeans、JBuilder、Jdeveloper、IDEA、JCreator或者Workshop,包括進行工程管理、常用選項的設置、插件的安裝配置以及進行調(diào)試。
4、API:Java的核心API是非常龐大的,但是有一些內(nèi)容筆者認為是Java程序員必須熟悉的,否則不可能熟練的運用Java,包括:
◆java.lang包下的80%以上的類的功能的靈活運用。
◆java.util包下的80%以上的類的靈活運用,特別是集合類體系、規(guī)則 表達式、zip、以及時間、隨機數(shù)、屬性、資源和Timer.◆java.io包下的60%以上的類的使用,理解IO體系的基于管道模型的設計思路以及常用IO類的特性和使用場合。
◆java.math包下的100%的內(nèi)容。
◆java.net包下的60%以上的內(nèi)容,對各個類的功能比較熟悉。
◆java.text包下的60%以上的內(nèi)容,特別是各種格式化類。
◆熟練運用JDBC.8)、java.security包下40%以上的內(nèi)容,如果對于安全沒有接觸的話根本就不可能掌握java.◆AWT的基本內(nèi)容,包括各種組件事件、監(jiān)聽器、布局管理器、常用組件、打印。
◆Swing的基本內(nèi)容,和AWT的要求類似。
◆XML處理,熟悉SAX、DOM以及JDOM的優(yōu)缺點并且能夠使用其中的一種完成XML的解析及內(nèi)容處理。
5、測試 :必須熟悉使用junit編寫測試用例完成代碼的自動測試。
6、管理:Java程序員必須熟悉使用ant完成工程管理的常用任務,例如工程編譯、生成javadoc、生成jar、版本控制、自動測試。
7、排錯:應該可以根據(jù)異常信息比較快速的定位問題的原因和大致位置。
8、思想:必須掌握OOP的主要要求,這樣使用Java開發(fā)的系統(tǒng)才能是真正的Java系統(tǒng)。
9、規(guī)范:編寫的代碼必須符合流行的編碼規(guī)范,例如類名首字母大寫,成員和方法名首字母小寫,方法名的第一個單詞一般是動詞,包名全部小寫等,這樣程序的可讀性才比較好。
10、博學:Java程序員除了精通Java意外,還要掌握J2EE、Oracle、WebLogic、Jboss、Spring、Struts、Hibernate 等流行技術(shù),掌握軟件架構(gòu)設計思想、搜索 引擎優(yōu)化、緩存系統(tǒng)設計、網(wǎng)站負載均衡、系統(tǒng)性能調(diào)優(yōu)等實用技術(shù)。
第二篇:優(yōu)秀的java程序員必須掌握的十項技能
西安尚學堂
一個優(yōu)秀的Java程序員必須掌握的10項技能
3G時代迫使IT從業(yè)者中的技術(shù)人員掌握越來越多的實用技能,作為IT行業(yè)的技術(shù)創(chuàng)造者,一個優(yōu)秀的java程序員必須掌握以下的10項技能,方能勝任java程序員的崗位。
1、語法:必須比較熟悉,在寫代碼的時候的編輯器對某一行報錯應該能夠根據(jù)報錯信息知道是什么樣的語法錯誤并且知道如何修正。
2、命令:必須熟悉自帶的常用命令及其常用選項,需要熟悉的命令:appletviewer、Htmlonverter、jar、java、javac、javadoc、javap、javaw、native2ascii、serialver,如果這些命令你沒有全部使用過,那么你對java實際上還很不了解。
3、工具:必須至少熟練使用一種IDE的開發(fā)工具,例如、Netbeans、JBuilder、Jdeveloper、IDEA、JCreator或者Workshop,包括進行工程管理、常用選項的設置、插件的安裝配置以及進行調(diào)試。
4、API:的核心API是非常龐大的,但是有一些內(nèi)容筆者認為是必須熟悉的,否則不可能熟練的運用Java,包括:
◆java.lang包下的80%以上的類的功能的靈活運用。
◆java.util包下的80%以上的類的靈活運用,特別是集合類體系、規(guī)則表達式、zip、以及時間、隨機數(shù)、屬性、資源和Timer.◆java.io包下的60%以上的類的使用,理解IO體系的基于管道模型的設計思路以及常用IO類的特性和使用場合。
◆java.math包下的100%的內(nèi)容。
◆java.net包下的60%以上的內(nèi)容,對各個類的功能比較熟悉。
◆java.text包下的60%以上的內(nèi)容,特別是各種格式化類。
◆熟練運用JDBC.8)、java.security包下40%以上的內(nèi)容,如果對于安全沒有接觸的話根本就不可能掌握java.◆AWT的基本內(nèi)容,包括各種組件事件、監(jiān)聽器、布局管理器、常用組件、打印?!鬝wing的基本內(nèi)容,和AWT的要求類似。
◆XML處理,熟悉SAX、DOM以及JDOM的優(yōu)缺點并且能夠使用其中的一種完成XML的解析及內(nèi)容處理。
5、測試:必須熟悉使用junit編寫測試用例完成代碼的自動測試。
6、管理:必須熟悉使用ant完成工程管理的常用任務,例如工程編譯、生成javadoc、生成jar、版本控制、自動測試。
7、排錯:應該可以根據(jù)信息比較快速的定位問題的原因和大致位置。
8、思想:必須掌握OOP的主要要求,這樣使用Java開發(fā)的系統(tǒng)才能是真正的Java系統(tǒng)。
9、規(guī)范:編寫的代碼必須符合流行的編碼規(guī)范,例如類名首字母大寫,成員和方法名首字母小寫,方法名的第一個單詞一般是動詞,包名全部小寫等,這樣程序的可讀性才比較好。
10、博學:掌握、Oracle、WebLogic、Jboss、、Struts、Hibernate 等流行技術(shù),掌握軟件架構(gòu)設計思想、搜索引擎優(yōu)化、緩存系統(tǒng)設計、網(wǎng)站負載均衡、系統(tǒng)性能調(diào)優(yōu)等實用技術(shù)。
第三篇:JAVA程序員應該掌握的10項技能
004km.cn JAVA程序員應該掌握的10項技能
作為一個Java程序員,應該掌握的一些技能:
1、語法:必須比較熟悉,在寫代碼的時候IDE的編輯器對某一行報錯應該能夠根據(jù)報錯信息知道是什么樣的語法錯誤并且知道任何修正。
2、命令:必須熟悉JDK帶的一些常用命令及其常用選項,命令至少需要熟悉:appletviewer、HtmlConverter、jar、java、javac、javadoc、javap、javaw、native2ascii、serialver,如果這些命令你沒有全部使用過,那么你對java實際上還很不了解。
3、工具:必須至少熟練使用一種IDE的開發(fā)工具,例如Eclipse、Netbeans、JBuilder、Jdeveloper、IDEA、JCreator或者Workshop,包括進行工程管理、常用選項的設置、插件的安裝配置以及進行調(diào)試。
4、API:Java的核心API是非常龐大的,但是有一些內(nèi)容筆者認為是必須熟悉的,否則不可能熟練的運用Java,包括:
◆java.lang包下的80%以上的類的功能的靈活運用。
◆java.util包下的80%以上的類的靈活運用,特別是集合類體系、規(guī)則表達式、zip、以及時間、隨機數(shù)、屬性、資源和Timer.◆java.io包下的60%以上的類的使用,理解IO體系的基于管道模型的設計思路以及常用IO類的特性和使用場合。
◆java.math包下的100%的內(nèi)容。
◆java.net包下的60%以上的內(nèi)容,對各個類的功能比較熟悉。
◆java.text包下的60%以上的內(nèi)容,特別是各種格式化類。
◆熟練運用JDBC.8)、java.security包下40%以上的內(nèi)容,如果對于安全沒有接觸的話根本就不可能掌握java.◆AWT的基本內(nèi)容,包括各種組件事件、監(jiān) 聽器、布局管理器、常用組件、打印。
◆Swing的基本內(nèi)容,和AWT的要求類似。
◆XML處理,熟悉SAX、DOM以及JDOM的優(yōu)缺點并且能夠使用其中的一種完成XML的解析及內(nèi)容處理。
004km.cn
5、測試:必須熟悉使用junit編寫測試用例完成代碼的自動測試。
6、管理:必須熟悉使用ant完成工程管理的常用任務,例如工程編譯、生成javadoc、生成jar、版本控制、自動測試。
7、排錯:應該可以根據(jù)異常信息比較快速的定位問題的原因和大致位置。
8、思想:必須掌握OOP的主要要求,這樣使用Java開發(fā)的系統(tǒng)才能是真正的Java系統(tǒng)。
9、規(guī)范:編寫的代碼必須符合流行的編碼規(guī)范,例如類名首字母大寫,成員和方法名首字母小寫,方法名的第一個單詞一般是動詞,包名全部小寫等,這樣程序的可讀性才比較好。
(ps:本文章由北大青鳥廣安門校區(qū)搜集自互聯(lián)網(wǎng))
第四篇:一個Java程序員應該掌握的10項技能
一個Java程序員應該掌握的10項技能
1、語法:必須比較熟悉,在寫代碼的時候IDE的編輯器對某一行報錯應該能夠根據(jù)報錯信息知道是什么樣的語法錯誤并且知道任何修正。
2、命令:必須熟悉JDK帶的一些常用命令及其常用選項,命令至少需要熟悉:appletviewer、HtmlConverter、jar、java、javac、javadoc、javap、javaw、native2ascii、serialver,如果這些命令你沒有全部使用過,那么你對java實際上還很不了解。
3、工具:必須至少熟練使用一種IDE的開發(fā)工具,例如Eclipse、Netbeans、JBuilder、Jdeveloper、IDEA、JCreator或者Workshop,包括進行工程管理、常用選項的設置、插件的安裝配置以及進行調(diào)試。
4、API:Java的核心API是非常龐大的,但是有一些內(nèi)容筆者認為是必須熟悉的,否則不可能熟練的運用Java,包括:
◆java.lang包下的80%以上的類的功能的靈活運用。
◆java.util包下的80%以上的類的靈活運用,特別是集合類體系、規(guī)則表達式、zip、以及時間、隨機數(shù)、屬性、資源和Timer.◆java.io包下的60%以上的類的使用,理解IO體系的基于管道模型的設計思路以及常用IO類的特性和使用場合。
◆java.math包下的100%的內(nèi)容。
◆java.net包下的60%以上的內(nèi)容,對各個類的功能比較熟悉。
◆java.text包下的60%以上的內(nèi)容,特別是各種格式化類。
◆熟練運用JDBC.8)、java.security包下40%以上的內(nèi)容,如果對于安全沒有接觸的話根本就不可能掌握java.◆AWT的基本內(nèi)容,包括各種組件事件、監(jiān)聽器、布局管理器、常用組件、打印。
◆Swing的基本內(nèi)容,和AWT的要求類似。
◆XML處理,熟悉SAX、DOM以及JDOM的優(yōu)缺點并且能夠使用其中的一種完成XML的解析及內(nèi)容處理。
5、測試:必須熟悉使用junit編寫測試用例完成代碼的自動測試。
6、管理:必須熟悉使用ant完成工程管理的常用任務,例如工程編譯、生成javadoc、生成jar、版本控制、自動測試。
7、排錯:應該可以根據(jù)異常信息比較快速的定位問題的原因和大致位置。
8、思想:必須掌握OOP的主要要求,這樣使用Java開發(fā)的系統(tǒng)才能是真正的Java系統(tǒng)。
9、規(guī)范:編寫的代碼必須符合流行的編碼規(guī)范,例如類名首字母大寫,成員和方法名首字母小寫,方法名的第一個單詞一般是動詞,包名全部小寫等,這樣程序的可讀性才比較好。
10、博學:掌握J2EE、Oracle、WebLogic、Jboss、Spring、Struts、Hibernate 等流行技術(shù),掌握軟件架構(gòu)設計思想、搜索引擎優(yōu)化、緩存系統(tǒng)設計、網(wǎng)站負載均衡、系統(tǒng)性能調(diào)優(yōu)等實用技術(shù)。
第五篇:java程序員需掌握的知識點
一、數(shù)據(jù)庫事務
答:是指作為單個邏輯工作單元執(zhí)行的一系列操作,要么完全地執(zhí)行,要么完全地不執(zhí)行。事務處理可以確保事務性單元內(nèi)的所有操作都成功完成,否則永久不會更新面向數(shù)據(jù)的資源。通過將一組相關(guān)操作組合為一個要么全部成功要么全部失敗的單元,可以簡化錯誤恢復并使應用程序更加可靠。一個邏輯工作單元要成為事務,必須滿足所謂的ACID(原子性、一致性、隔離性和持久性)屬性。
事務是數(shù)據(jù)庫運行中的一個邏輯工作單位,由數(shù)據(jù)庫管理系統(tǒng)(DBMS)中的事務管理子系統(tǒng)負責事務的處理。
原子性
事務必須是原子工作單元;對于其數(shù)據(jù)修改,要么全都執(zhí)行,要么全都不執(zhí)行。通常,與某個事務關(guān)聯(lián)的操作具有共同的目標,并且是相互依賴的。如果系統(tǒng)只執(zhí)行這些操作的一個子集,則可能會破壞事務的總體目標。原子性消除了系統(tǒng)處理操作子集的可能性。
一致性
事務在完成時,必須使所有的數(shù)據(jù)都保持一致狀態(tài)。
隔離性
由并發(fā)事務所作的修改必須與任何其它并發(fā)事務所作的修改隔離。事務查看數(shù)據(jù)時數(shù)據(jù)所處的狀態(tài),要么是另一并發(fā)事務修改它之前的狀態(tài),要么是另一事務修改它之后的狀態(tài),事務不會查看中間狀態(tài)的數(shù)據(jù)。
持久性
事務完成之后,它對于系統(tǒng)的影響是永久性的。該修改即使出現(xiàn)致命的系統(tǒng)故障也將一直保持。
二、多態(tài),重寫,重載
重寫:重寫的方法必須和被重寫的方法相同的方法名、參數(shù)列表和返回值類型。
重載:重載時只能通過相同的方法名、不同的參數(shù)形式實現(xiàn)。不同的參數(shù)類型可以是不同的參數(shù)類型,不同的參數(shù)個數(shù),不同的參數(shù)順序(參數(shù)類型必須不一樣)。
多態(tài):父類對象持有對子類的引用,并可以調(diào)用子類的方法,但該方法的實際持有對象是子類。
三、JDBC思想
JDBC(Java Data Base Connectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的Java API,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java編寫的類和接口組成。1.注冊驅(qū)動(只做一次)2.建立連接(Connection)
3.創(chuàng)建執(zhí)行SQL的語句(Statement)
4.處理執(zhí)行結(jié)果(ResultSet)
5.釋放資源(ResultSet, Statement,Connection)
四、抽象類與接口的區(qū)別
1、接口是公開的,里面不能有私有的方法或變量,是用于讓別人使用的,而抽象類是可以有私有方法或私有變量的。
2、實現(xiàn)接口的一定要實現(xiàn)接口里定義的所有方法,而繼承類可以有選擇地重寫需要用到的方法
3、接口要用implement實現(xiàn),抽象類要使用extends繼承。
五、jsp和servlet之間的聯(lián)系
六、面向?qū)ο?大特征
繼承:繼承是一種聯(lián)結(jié)類的層次模型,并且允許和鼓勵類的重用,它提供了一種明確表述共性的方法。對象的一個新類可以從現(xiàn)有的類中派生,這個過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父
類)。派生類可以從它的基類那里繼承方法和實例變量,并且類可以修改或增加新的方法使之更適合特殊的需要。繼承性很好的解決了軟件的可重用性問題。
封裝:封裝是面向?qū)ο蟮奶卣髦?,是對象和類概念的主要特性。封裝是把過程和數(shù)據(jù)包圍起來,對數(shù)據(jù)的訪問只能通過已定義的界面。
多態(tài)性:多態(tài)性是指允許不同類的對象對同一消息作出響應。很好的解決了應用程序函數(shù)同名問題。
七、MVC
Model(模型)是應用程序中用于處理應用程序數(shù)據(jù)邏輯的部分。MVC模式:用一種將業(yè)務邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務邏輯。
通常模型對象負責在數(shù)據(jù)庫中存取數(shù)據(jù)。
View(視圖)是應用程序中處理數(shù)據(jù)顯示的部分。
通常視圖是依據(jù)模型數(shù)據(jù)創(chuàng)建的。Controller(控制器)是應用程序中處理用戶交互的部分。
通??刂破髫撠煆囊晥D讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)。
八、軟件開發(fā)模型:快速原型模型 優(yōu)點:耦合性低、重用性高、部署快、可維護性高。
缺點:沒有明確的定義、不適合小型,中等規(guī)模的應用程序、增加系統(tǒng)結(jié)構(gòu)和實現(xiàn)的復雜性。
九、hibernate的延遲加載:延遲加載也叫懶加載,是提高程序執(zhí)行效率的一種機制,即只有真正使用該對象的數(shù)據(jù)時才會創(chuàng)建。
十、exeuteupdate()和executequery()區(qū)別:前者用于修改已有數(shù)據(jù),比如增刪改。后者用于查詢數(shù)據(jù),需返回查詢結(jié)果。
十一、單例模式
package SingletonDemo;//單例設計模式 public class Singleton {
/** * 實際開發(fā)中,我們通常會將餓漢模式和懶漢模式結(jié)合在一起來書寫單例設計模式。//這個成員變量就是用來返回記錄當前對外提供的那個對象。private static Singleton singleton;static{//在static初始化塊中初始化,餓漢模式。確保成員變量僅僅被初始化一次。
} //構(gòu)造方法私有化 private Singleton(){}
} //定義一個對外的方法,能夠讓用戶調(diào)用該方法來獲取一個屬于該類的實例方法。//不管是哪個用戶來調(diào)用這個方法都需要注意這個方法的返回對象永遠是同一個。public static Singleton getInstance(){
} //懶漢模式
if(singleton==null){//第一次初始化。
} singleton=new Singleton();
singleton=new Singleton();return singleton;*/
十二、不用stop()的原因:因為它不安全。它會解除由線程獲取的所有鎖定。
不用suspend()的原因:suspend()方法容易發(fā)生死鎖。調(diào)用 suspend()的時候,目標線程會停下來,但卻仍然持有在這之前獲得的鎖定。掛起:wait()重寫啟動線程:notify()線程有四種狀態(tài)分別是:運行、就緒、掛起、結(jié)束。
十三、什么時候使用同步和異步
如果數(shù)據(jù)將在線程間共享,必須進行同步存取。
同步 的實現(xiàn)方法有兩種,分別是 synchronized, wait
與 notify。