前幾天整理出來的一個JAVA的代碼書寫規範! 項目開發規範一、目的
先看一下項目的目錄結構:source目錄裡放Java來源程式,classes目錄裡放編譯好的class檔案。這兩個目錄裡的檔案都要按包結構組織好。當然,classes目錄也可以不必事先建立,這可以交給Ant去做。以下是我寫的build.xml,放在Hello目錄下:<?xml version="1.0" encoding="UTF-8" ?><project name="hello" default="compile" basedir=".">
1. 首先equals()和hashcode()這兩個方法都是從object類中繼承過來的。 equals()方法在object類中定義如下: public boolean equals(Object obj) { return (this == obj); } 很明顯是對兩個對象的地址值進行的比較(即比較引用是否相同)。但是我們必需清楚,當String 、Math、還有Integer、Double。。。。等這些封裝類在使用equals()方法時,已經覆蓋了object類的equals()方法。
做了一段時間的效能最佳化,感覺不錯,接觸到了不少基礎知識,也鍛煉了自己的邏輯思維,寫代碼的時候考慮的更加全面一些,自己寫出來的代碼品質也會有所提高,寫完一段代碼會回頭看看是不是有更簡單更優的實現方法,還有也會自動會去考慮遵循一些基本的規範,比如嵌套迴圈不能超過三層、方法和類都要遵循單一職責的原則等等。 下面就將自己這段時間的工作總結一下,記錄的同時也給剛做這方面工作的同志們一些建議,希望能夠快速上手。系統效能最佳化一般分為下面幾步走:1、發現問題
java 網域服務器 驗證 到與伺服器端用域使用者進行身分識別驗證: 代碼Code highlighting produced by Actipro CodeHighlighter
用java建立檔案夾package test;public class muluTest{ public static void main(String[] args) { muluTest mulutest = new muluTest(); mulutest.newFolder("D:\\abcds"); } public void newFolder(String folderPath) { String filePath =
因為在jsp中對中文進行了編碼的時候用的是UTF-8的編碼方式,而在servlet中調用request.getParameter();方法的時候使用伺服器指定的編碼格式自動解碼一次,所以前台編碼一次後台解碼一次而解碼和編碼的方式不同所以造成了亂碼的出現,所以要2次searchBean.setKeyword(URLEncoder.encode(URLEncoder.encode(searchBean.getKeyword(), "utf-8"), "utf-8"));String keyword=
先記錄下收集的。 (1)修改tomcat的catalina.sh檔案,配置記憶體 (2)gcc的問題,後來我們降級了發現也沒用,這個和jvm沒什麼關係 (3)建立個新使用者,試了也沒用 (4)許可權的問題, 試了上面四種方法都沒解決,大家如果出現這種問題可以用以上四種辦法試試 後來在網上有個人說,是oracle的環境變數影響了jdk
我之前寫過一篇談DCL的文章,最近又收到一個問題,本想直接回複,但我又不想再看原來寫的文章,那些順序分析其實很繞。這次我不會直接分析順序,而是從基礎概念講起,希望大家能看得輕鬆一些。如果你搜尋網上分析dcl為什麼在java中失效的原因,都會談到編譯器會做最佳化云云,我相信大家看到這個一定會覺得很沮喪、很無助,對自己寫的程式很沒信心。我很理解這種感受,因為我也經曆過,這或許是為什麼網上一直有人喜歡談dcl的原因。如果放在java5之前,從編譯器的角度去解釋dcl也無可厚非,在java5的JMM(記
最近在做一個互連網項目,不可避免和其他互連網項目一樣,需要各種類似的功能。其中一個就是通過使用者訪問網站的IP地址顯示目前使用者所在地。在沒有查閱資料之前,我第一個想到的是應該有這樣的RESTFUL服務,可能會有免費的,也有可能會是收費的。後來查閱了相關資料和諮詢了客服人員發現了一款相當不錯的庫:GEOIP。中文官網:http://www.maxmind.com/zh/home?pkit_lang=zh英文官網:http://www.maxmind.com/en/home而且GeoIP也提供了如
第一,談談final, finally, finalize的區別。final—修飾符(關鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為 abstract的,又被聲明為final的。將變數或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變數必須在聲明時給定初值,而在以後的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載finally—再異常處理時提供 finally
幾種java轉exe的工具,進行一下比較,談談自己的看法:1. 從www.towerj.com獲得一個TowerJ編譯器,該編譯器可以將你的CLASS檔案編譯成EXE檔案。 註:現在已經找不到,不提供了,被人家收購了。2. 利用微軟的SDK-Java 4.0所提供的jexegen.exe建立EXE檔案,這個軟體可以從微軟的網站免費下載,地址如下: http://www.microsoft.com/java/download/dl_sdk40.htm jexegen的文法如下:
1、jsp有哪些內建對象?作用分別是什嗎?2、描述一下servlet的生命週期和基本架構。3、多線程有幾種實現方法,都是什嗎? 同步有幾種實現方法,都是什嗎?4、範圍public private protected以及不寫時的區別?5、用JAVA實現資料庫查詢(寫一段完整的程式)。6、用Regex判斷123456_78不是一個數字。7、排序都有哪幾種方法?請列舉。用JAVA實現一個快速排序。---------------------------------------------------
import java.util.*;import java.util.*;import java.text.*;public class Default { public static void main(String[] args) { Locale aLocale = Locale.JAPAN; Locale.setDefault(aLocale); System.out.println("Locale: " + aLocale); System.out.println("ISO 2 l
//主程式類public class KeyPress extends JFrame { public static void main(String[] args) { KeyFrame frame = new KeyFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); }} //面板設定類class KeyFrame extends JFrame { public
一、IO流的三種分類方式 1.按流的方向分為:輸入資料流和輸出資料流 2.按流的資料單位不同分為:位元組流和字元流 3.按流的功能不同分為:節點流和處理流二、IO流的四大抽象類別: 字元流:Reader Writer 位元組流:InputStream(讀資料) OutputStream(寫資料)三、InputStream的基本方法 int read() throws IOException 讀取一個位元組以整數形式返回,如果返回-1已到輸入資料流的末尾
這兩天在練習Struts1.2+Hibernate3.1在MyEclipse5.1下的編程。Struts及Hibernate這一年來斷斷續續地基本文法及核心技術也熟悉了不少,就找了個RSS線上閱讀的執行個體練手。中間就遇到了一個對RSS XML文檔進行解析的問題。核心解析代碼如下:public static List parseFeed(String address) { //System.setProperty(
用列舉程式itertor,這樣做的原因是: 列舉程式是Java在後台自動排序好,比純粹的for迴圈要快,因為如果用 for迴圈,也需要將List中的對象依次取出,這樣對記憶體的調用是隨機的,不如Iterator。而且,用列舉程式也可以進行迴圈,寫法為: for(Iterator it = list.iterator; it.hasNext();){ Obeject obj = (Object)it.next(); //obj的操作
public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); map.put("1", "a"); map.put("222", "aa"); map.put("33", "aaa"); Set<String> set = new HashSet<String>(); set= map.keySet();
第五章 隱藏具體實現1. 一個編譯單元都必須有一個尾碼名.java,而在編譯單元內則可以有一個public類,該類名必須和檔案夾的名稱相同。一個java檔案中只能有一個public類。2. 包名實際上也代表了其目錄結構。3. 如果一個檔案中引用了兩個包,且它們有一個同名的類,而你又都要用到。在使用時要明確指明是哪個包裡的類.。4. 存取權限1) 包存取權限(預設存取權限)包中的所有其他類對那個成員都有存取權限,但對於這個包之外的所有類,這個成員卻是private。2)