溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Java編程規(guī)范有哪些

發(fā)布時(shí)間:2021-08-05 18:04:33 來(lái)源:億速云 閱讀:184 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

Java編程規(guī)范有哪些,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。


package learnJava;
public class 魯班連招類 {
	public static void main(String[] args) {
		System.out.println("發(fā)現(xiàn)敵人");
		System.out.println("釋放3技能");System.out.println("平A1");System.out.println("平A2");
System.out.println("平A3");System.out.println("平A4");
			System.out.println("釋放1技能");
			System.out.println("平A1");System.out.println("平A2");System.out.println("平A3");System.out.println("平A4");
System.out.println("釋放2技能");System.out.println("平A1");System.out.println("平A2");
			System.out.println("平A3");System.out.println("平A4");
			System.out.println("敵人已經(jīng)被消滅");}}

運(yùn)行代碼

Java編程規(guī)范有哪些

♀ 小AD:明哥,咋樣?我這連招,KO敵人,刺客突臉我可以把2技能先放
♂ 明世隱:很(yao)好(lao)耶(ming)
♀ 小AD:那可不!我覺(jué)得我可以統(tǒng)治下路了。
♂ 明世隱:你的為啥放技能后要平A4下。
♀ 小AD:因?yàn)檫@個(gè)平A 4下我用來(lái)代表的是小魯班的被動(dòng)掃射效果,表示攻擊速度很快。
♂ 明世隱:嗯嗯,真不錯(cuò),有編程的天賦,看來(lái)我選對(duì)了徒弟哈,但是,還是讓我來(lái)說(shuō)說(shuō)你的問(wèn)題。
♀ 小AD:???
♂ 明世隱:我說(shuō)讓我來(lái)說(shuō)說(shuō)你的問(wèn)題。
♀ 小AD:有什么問(wèn)題,我這連招不好嗎?你上次教我的,你是不是藏了什么?
♂ 明世隱:你耗子未汁吧你!
♀ 小AD:明哥,直接說(shuō)吧,別這樣
♂ 明世隱:我說(shuō)你代碼寫(xiě)的亂七八糟。
♀ 小AD:沒(méi)問(wèn)題啊,你看我不是運(yùn)行給你看了嗎?結(jié)果犀利
♂ 明世隱:確實(shí)犀利,我說(shuō)的是代碼很亂。
♀ 小AD:我不懂你的意思
♂ 明世隱:就是不規(guī)范。
♀ 小AD:哦,我不知道哦,那你給我講講唄
♂ 明世隱:來(lái),下次寫(xiě)這樣的代碼,別在朋友圈發(fā)說(shuō)你認(rèn)識(shí)我,我老臉往哪里放。
♀ 小AD:(大寫(xiě)的尷尬)
Java編程規(guī)范有哪些

命名規(guī)則

類名首字母應(yīng)該大寫(xiě)。字段、方法以及對(duì)象(句柄)的首字母應(yīng)小寫(xiě)。對(duì)于所有標(biāo)識(shí)符,其中包含的所有單詞都應(yīng)緊靠在一起,而且大寫(xiě)中間單詞的首字母。例如:

ThisIsAClassName

thisIsMethodOrFieldName

命名規(guī)則必須遵循以下規(guī)則:

1)、名稱只能由字母、數(shù)字、下劃線、$符號(hào)組成

2)、命名時(shí)不能以數(shù)字開(kāi)頭

3)、在命名是絕對(duì)不能出現(xiàn)Java關(guān)鍵字。

4)、見(jiàn)名識(shí)意—看到名字就知道是什么。

當(dāng)然這些都不是硬性規(guī)定,你可以按照自己的想法去命名。但那樣的代碼可讀性很差。

public class 魯班連招類 {

♀ 小AD:你是說(shuō)我這個(gè)類的命名不滿足上面的第一條是嗎
♂ 明世隱:可以這么說(shuō)。
♀ 小AD:那eclipse為什么沒(méi)有報(bào)錯(cuò)。
♂ 明世隱:其實(shí)是可以用中文命名的,類名和方法名用中文其實(shí)也是可以成功運(yùn)行的,因?yàn)橹灰荱nicode字符,就符合規(guī)范,不過(guò)這里的規(guī)范指的是標(biāo)識(shí)符規(guī)范,代碼規(guī)范是不提倡用中文的。
♀ 小AD:這樣啊,那我把類名改成lz
♂ 明世隱:你這是什么意思?
♀ 小AD:lz就是連招的意思啊
♂ 明世隱:可是我看不懂誒!
♀ 小AD:那改lianzhao
♂ 明世隱:類開(kāi)頭用大寫(xiě),然后采用駝峰命名。
♀ 小AD:那改成LianZhao就可以撒
♂ 明世隱:你為什么不用英文來(lái)命名,用拼音感覺(jué)不舒服。
♀ 小AD:那連招的英語(yǔ)是什么?
♂ 明世隱:你問(wèn)我干嘛?我不會(huì)
♀ 小AD:哈哈,明哥你都不會(huì)啊,我也不會(huì)。
♂ 明世隱:那說(shuō)好了,就這樣命名了,嘿嘿。

代碼排版

1.程序塊要采用縮進(jìn)風(fēng)格編寫(xiě),縮進(jìn)的空格數(shù)為4個(gè)。

2.在函數(shù)體的開(kāi)始、類和接口的定義、以及if、for、do、while、switch、case語(yǔ)句中的程序都要采用如上的縮進(jìn)方式。

3.較長(zhǎng)的語(yǔ)句、表達(dá)式或參數(shù)(>80字符)要分成多行書(shū)寫(xiě),長(zhǎng)表達(dá)式要在低優(yōu)先級(jí)操作符處劃分新行,操作符放在新行之首,劃分出的新行要進(jìn)行適當(dāng)?shù)目s進(jìn),使排版整齊,語(yǔ)句可讀。

4.if, for, do, while, case, switch, default 等語(yǔ)句自占一行,且if, for, do, while等語(yǔ)句的執(zhí)行語(yǔ)句無(wú)論多少都要加括號(hào){}。

5.相對(duì)獨(dú)立的程序塊之間、變量說(shuō)明之后必須加空行。

6.出現(xiàn)分號(hào)盡量換行。

♀ 小AD:哥,那么多那么麻煩,我都看不明白.
♂ 明世隱:其實(shí)也不用刻意去記,我?guī)湍惆汛a編輯一下你就很容易看明白。
♀ 小AD:好

針對(duì)你的代碼分4步

1.代碼縮進(jìn)對(duì)齊

Java編程規(guī)范有哪些

修改后:

package learnJava;
public class LianZhao {
	public static void main(String[] args) {
		System.out.println("發(fā)現(xiàn)敵人");
		System.out.println("釋放3技能");System.out.println("平A1");System.out.println("平A2");
		System.out.println("平A3");System.out.println("平A4");
		System.out.println("釋放1技能");
		System.out.println("平A1");System.out.println("平A2");System.out.println("平A3");System.out.println("平A4");
		System.out.println("釋放2技能");System.out.println("平A1");System.out.println("平A2");
		System.out.println("平A3");System.out.println("平A4");
		System.out.println("敵人已經(jīng)被消滅");}}

2.遇到分號(hào)換行

Java編程規(guī)范有哪些

修改后:

package learnJava;
public class LianZhao {
	public static void main(String[] args) {
		System.out.println("發(fā)現(xiàn)敵人");
		System.out.println("釋放3技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("釋放1技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("釋放2技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敵人已經(jīng)被消滅");}}

3.大括號(hào)、括號(hào)等成對(duì)出現(xiàn)

Java編程規(guī)范有哪些

修改后:

package learnJava;
public class LianZhao {
	public static void main(String[] args) {
		System.out.println("發(fā)現(xiàn)敵人");
		System.out.println("釋放3技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("釋放1技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("釋放2技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敵人已經(jīng)被消滅");
	}
}

4.加上注釋

♀ 小AD:明哥什么是注釋啊
♂ 明世隱:注釋就是說(shuō)明
♀ 小AD:說(shuō)明什么?
♂ 明世隱:說(shuō)明這個(gè)類是用來(lái)做什么的,這個(gè)方法是什么功能等。
♀ 小AD:好像明白了一點(diǎn)
♂ 明世隱:給你舉個(gè)例子,你就完全清楚了。

Java編程規(guī)范有哪些

Java編程規(guī)范有哪些

Java編程規(guī)范有哪些

♂ 明世隱:上面的圖知道什么意思吧
♀ 小AD:當(dāng)然啊,就是技能說(shuō)明唄
♂ 明世隱:對(duì)啊 ,那你如果不熟悉技能的話,你不是可以看看這個(gè)技能干啥用的,有多少傷害、冷卻時(shí)間多少、藍(lán)耗多少嗎?
♀ 小AD:是的,沒(méi)有這個(gè)說(shuō)明,除非對(duì)這個(gè)英雄比較熟悉,否則就不知道了。
♂ 明世隱:那你拿到一段代碼的時(shí)候,如果沒(méi)有說(shuō)明,你可能搞不清楚這個(gè)代碼是干嘛的吧。
♀ 小AD:嗯,但現(xiàn)在這個(gè)代碼我知道 啊
♂ 明世隱:目前你當(dāng)然是知道的,因?yàn)榈谝贿@個(gè)代碼簡(jiǎn)單,容易看明白,如果邏輯復(fù)雜的呢?第二記憶都是一段時(shí)間的,如果過(guò)些時(shí)候你再看到某段代碼,你也想不起來(lái)是干嘛的了,必須一行行的去看代碼,然后你才能知道,這樣不就很麻煩了嗎?
♀ 小AD:好像是這個(gè)道理。
♂ 明世隱:所以說(shuō)就跟這個(gè)技能描述一樣的,我們也可以改代碼加上說(shuō)明,稱之為注釋。
♀ 小AD:原來(lái)是這個(gè)意思啊,那注釋?xiě)?yīng)該怎么加?
♂ 明世隱:那我們來(lái)加一下吧。

Java注釋

注釋的作用

很多java新手在敲代碼的時(shí)候都不會(huì)在意注釋這個(gè)東西,但其實(shí),注釋在Java編程中也是必不可少的。

在學(xué)習(xí)過(guò)程中,我們應(yīng)該也發(fā)現(xiàn)要敲的代碼越來(lái)越多,越來(lái)越繁瑣,而且做編程本來(lái)就很需要思維邏輯,在碰到需要使用大量代碼的時(shí)候,就需要在每個(gè)關(guān)鍵點(diǎn)做好注釋,讓我們明白這段代碼的含義,同時(shí),如果要請(qǐng)教別人的話,別人看你的代碼更加方便。

而在以后的工作當(dāng)中,肯定會(huì)有團(tuán)隊(duì)協(xié)作的,這種時(shí)候,也是非常需要注釋的,不然在后期合并的時(shí)候是會(huì)非常麻煩的。

注釋的3種類型

1.單行注釋
//內(nèi)容1
//內(nèi)容2

2.多行注釋
/*
內(nèi)容1
內(nèi)容2
*/

3.文檔注釋
/**
*內(nèi)容1
*內(nèi)容2
*/

給代碼加上單行注釋

public class LianZhao {
	//主函數(shù)
	public static void main(String[] args) {
		System.out.println("發(fā)現(xiàn)敵人");
		//釋放3技能
		System.out.println("釋放3技能");
		//掃射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//釋放1技能
		System.out.println("釋放1技能");
		//掃射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//釋放2技能
		System.out.println("釋放2技能");
		//掃射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敵人已經(jīng)被消滅");
	}
}

♀ 小AD:明哥,有句話我想說(shuō)但不敢說(shuō)?
♂ 明世隱:說(shuō)吧,不噴你
♀ 小AD:我感覺(jué)你這個(gè)注釋沒(méi)什么用,你不加注釋,我也知道這個(gè)寫(xiě)的是放技能、平A啊,你現(xiàn)在加這個(gè)注釋也是多余的。
♂ 明世隱:。。。,是這樣的,因?yàn)槟氵@個(gè)代碼是最基礎(chǔ)的,就一句打印輸出,并且輸出的內(nèi)容也寫(xiě)的很清楚,所以你感覺(jué)沒(méi)必要,但在開(kāi)發(fā)中,代碼的邏輯就復(fù)雜的多,你不加注釋別人可能就看不明白你 代碼、或者說(shuō)要花額外的時(shí)間去理解你的代碼;甚至于你自己再次回過(guò)頭來(lái)看的時(shí)候,沒(méi)有注釋,都要重新去閱讀代碼,才知道是干嘛的。
♀ 小AD:哦,這樣啊,那我明白了

給代碼加上多行注釋

Java編程規(guī)范有哪些

給代碼加上文檔注釋

Java編程規(guī)范有哪些

注釋后完整的類代碼

package learnJava;
/**
 * 模擬魯班連招的類
 * @author 小AD
 * @date 2021-07-04
 */
public class LianZhao {
	/*
	 * 主函數(shù)
	 * 此函數(shù)模擬了魯班的連招
	 * 3技能+掃射+1技能+掃射+2技能+掃射
	 */
	public static void main(String[] args) {
		System.out.println("發(fā)現(xiàn)敵人");
		//釋放3技能
		System.out.println("釋放3技能");
		//掃射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//釋放1技能
		System.out.println("釋放1技能");
		//掃射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//釋放2技能
		System.out.println("釋放2技能");
		//掃射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敵人已經(jīng)被消滅");
	}
}


看完上述內(nèi)容,你們掌握J(rèn)ava編程規(guī)范有哪些的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI