十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
盡量使用完整的英文描述符,采用適用于相關(guān)領(lǐng)域的術(shù)語(yǔ),采用大小寫(xiě)混合使名字可讀。
創(chuàng)新互聯(lián)建站提供高防主機(jī)、云服務(wù)器、香港服務(wù)器、簡(jiǎn)陽(yáng)服務(wù)器托管等
JAVA代碼規(guī)范:
(1)類名首字母應(yīng)該大寫(xiě)。字段、方法以及對(duì)象(句柄)的首字母應(yīng)小寫(xiě)。對(duì)于所有標(biāo)識(shí)符,其中包含的所有單詞都應(yīng)緊靠在一起,而且大寫(xiě)中間單詞的首字母。例如:
ThisIsAClassName
thisIsMethodOrFieldName
若在定義中出現(xiàn)了常數(shù)初始化字符,則大寫(xiě)static final基本類型標(biāo)識(shí)符中的所有字母。這樣便可標(biāo)志出它們屬于編譯期的常數(shù)。Java包(Package)屬于一種特殊情況:它們?nèi)际切?xiě)字母,即便中間的單詞亦是如此。對(duì)于域名擴(kuò)展名稱,如com,org,net或者edu等,全部都應(yīng)小寫(xiě)(這也是Java1.1和Java1.2的區(qū)別之一)。
(2)為了常規(guī)用途而創(chuàng)建一個(gè)類時(shí),請(qǐng)采取"經(jīng)典形式",并包含對(duì)下述元素的定義:equals()
hashCode()
toString()
clone()(implement Cloneable)
implement Serializable
(3)對(duì)于自己創(chuàng)建的每一個(gè)類,都考慮置入一個(gè)main(),其中包含了用于測(cè)試那個(gè)類的代碼。為使用一個(gè)項(xiàng)目中的類,我們沒(méi)必要?jiǎng)h除測(cè)試代碼。若進(jìn)行了任何形式的改動(dòng),可方便地返回測(cè)試。這些代碼也可作為如何使用類的一個(gè)示例使用。
(4)應(yīng)將方法設(shè)計(jì)成簡(jiǎn)要的、功能性單元,用它描述和實(shí)現(xiàn)一個(gè)不連續(xù)的類接口部分。理想情況下,方法應(yīng)簡(jiǎn)明扼要。若長(zhǎng)度很大,可考慮通過(guò)某種方式將其分割成較短的幾個(gè)方法。這樣做也便于類內(nèi)代碼的重復(fù)使用(有些時(shí)候,方法必須非常大,但它們?nèi)詰?yīng)只做同樣的一件事情)。
(5)設(shè)計(jì)一個(gè)類時(shí),請(qǐng)?jiān)O(shè)身處地為客戶程序員考慮一下(類的使用方法應(yīng)該是非常明確的)。然后,再設(shè)身處地為管理代碼的人考慮一下(預(yù)計(jì)有可能進(jìn)行哪些形式的修改,想想用什么方法可把它們變得更簡(jiǎn)單)。
(6)使類盡可能短小精悍,而且只解決一個(gè)特定的問(wèn)題。下面是對(duì)類設(shè)計(jì)的一些建議:
一個(gè)復(fù)雜的開(kāi)關(guān)語(yǔ)句:考慮采用"多形"機(jī)制
數(shù)量眾多的方法涉及到類型差別極大的操作:考慮用幾個(gè)類來(lái)分別實(shí)現(xiàn)
許多成員變量在特征上有很大的差別:考慮使用幾個(gè)類
(7)讓一切東西都盡可能地"私有"-private??墒箮?kù)的某一部分"公共化"(一個(gè)方法、類或者一個(gè)字段等等),就永遠(yuǎn)不能把它拿出。若強(qiáng)行拿出,就可能破壞其他人現(xiàn)有的代碼,使他們不得不重新編寫(xiě)和設(shè)計(jì)。若只公布自己必須公布的,就可放心大膽地改變其他任何東西。在多線程環(huán)境中,隱私是特別重要的一個(gè)因素-只有private字段才能在非同步使用的情況下受到保護(hù)。
(8)謹(jǐn)惕"巨大對(duì)象綜合癥。對(duì)一些習(xí)慣于順序編程思維、且初涉OOP領(lǐng)域的新手,往往喜歡先寫(xiě)一個(gè)順序執(zhí)行的程序,再把它嵌入一個(gè)或兩個(gè)巨大的對(duì)象里。根據(jù)編程原理,對(duì)象表達(dá)的應(yīng)該是應(yīng)用程序的概念。
hotspot 虛擬機(jī)(咱們平時(shí)開(kāi)發(fā)用的sun公司的虛擬機(jī),其他兩大商用虛擬機(jī)是BEA的JRockit和IBM的J9)里面兩個(gè)字節(jié)來(lái)限制大小,所以最多65536行,超過(guò)javac會(huì)無(wú)法編譯。而且一個(gè)Java方法不能超過(guò)64k。一般一個(gè)Java類不要有太多行數(shù),如果一個(gè)Java代碼超過(guò)幾千甚至過(guò)萬(wàn),個(gè)人覺(jué)得應(yīng)該考慮一些代碼優(yōu)化方式,比如繼承;或者重新構(gòu)思這個(gè)類。代碼行數(shù)太多可讀性查,不利于維護(hù)。
public static String format(long paramLong)//paramLong是一個(gè)傳遞進(jìn)來(lái)的long型整數(shù)
{
int i = 60 * 60;定義i=60乘60就是3600
long l1 = paramLong / i;定義l1等于paramLong除以i
long l2 = (paramLong - l1 * i) / 60;定義
long l3 = paramLong - l1 * i - l2 * 60;定義
String str1;聲明字符串
label64: String str2;label是監(jiān)聽(tīng)
if (l1 10L)如果l1小于10
{
str1 = "0" + l1;字符串拼接
if (l2 = 10L)如果l2大于等于10
break label175;結(jié)束監(jiān)聽(tīng)
str2 = "0" + l2;字符串拼接
label92: if (l3 = 10L)監(jiān)聽(tīng)如果l3大于等于10
break label195;結(jié)束監(jiān)聽(tīng)
}
for (String str3 = "0" + l3; ; str3 = l3)for循環(huán),
{
return str1 + ":" + str2 + ":" + str3;
str1 = l1;
break label64:
label175: str2 = l2;
label195: break label92:
}
}
主要研究一下監(jiān)聽(tīng)是怎么用的吧
個(gè)人認(rèn)為
看java代碼主要是要看懂代碼是要實(shí)現(xiàn)什么功能,邏輯比較重要,具體如果其中涉及了一些你不會(huì)的語(yǔ)法先不要管,寫(xiě)的程序多了,都會(huì)用到的。
接口分成兩部分,一個(gè)就是理解成提供給你的一個(gè)方法,直接用就行,二就是你實(shí)現(xiàn)一下接口,就比如接口是數(shù)據(jù)的增刪改查,你就直接調(diào)用來(lái)完成你要實(shí)現(xiàn)的功能,具體實(shí)現(xiàn)部分那無(wú)非就是連接下數(shù)據(jù)庫(kù),寫(xiě)個(gè)sql,實(shí)現(xiàn)一下功能就行了
需要配置一下idea的配置文件即可
首先找到idea的安裝目錄,然后找到bin目錄中的idea.properties文件
修改文件中這一行后面的值為9999
idea.max.intellisense.filesize=99991
重啟idea,就好啦