成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

Java黑科技之通過Google Java Style 文件配置IDEA和Ecplise代碼風格

瀏覽:121日期:2022-08-12 16:59:06
目錄一、引言二、Google Java Style 介紹 2.1 源文件基礎2.2 源文件結構2.3 格式化三、標識符命名規則四、Ecplise 配置 Google Java Style一、引言

每一個公司,團隊的代碼風格可能都不一樣,只要團隊內有自己統一的風格就好。接下來,介紹Google Java 代碼風格,并且如何在IDEA和Ecplise兩種比較流行的Java集成開發環境中配置Google Java 代碼風格。

如果不看google代碼風格詳細介紹的,可以下拉到最后查看 IDEA 和 Ecplise 配置 Google Java Style 教程和 Google Java Style 文件下載。

二、Google Java Style 介紹 2.1 源文件基礎

文件名

Java源文件名區分大小寫的,并且首字母大寫,以.java擴展名結束。

文件編碼

Java源文件編碼格式為UTF-8。

特殊字符

空格字符:除了行結束符之外,ASCII水平空格字符(0x20)是唯一出現在源文件中任何地方的空格字符。這也意味著,字符串和字符文字中的所有其他空白字符均被轉義。制表符不用于縮進。 特殊的轉義序列:所有轉義序列 ( b, t, n, f, r, ', ’ 和 ),不是八進制(例如 012)或Unicode(例如 u000a)的轉義。 非ASCII字符:對于其余的非ASCII字符,則使用實際的Unicode字符(例如∞)或等效的Unicode轉義符(例如 u221e)。用哪種取決于使代碼更易于閱讀和理解,盡管Unicode會在字符串文字之外進行轉義,但是不建議不在注釋中使用。例如String unitAbbrev = 'μs',沒必要寫成String unitAbbrev = 'u03bcs'。 2.2 源文件結構

一個Java源文件,按以下順序組成,并且每個部分空一行分隔開:

1.許可或版權信息(如果有)

2.Package語句,并且不換行的

3.Import語句,最后不要使用通配符導入,無論是靜態導入還是其他方式;每一行導入語句都是不換行的;所有靜態導入都在一個塊中,所有非靜態導入也在同一個塊中,塊之間用一空白行分隔開;在每個塊中,導入的名稱均按ASCII排序順序顯示。

4.頂級類定義

每一個頂級類都應該在一個單獨的源文件中,對于一個類中的內容,最好是有意識地對類中的內容按某種規則排序排版,例如新的方法一般添加在類的尾部,這樣我們可以根據時間線索了解這些方法何時加進來的;再比如,當一個類具有多個構造函數或多個具有相同名稱的方法時,它們將順序出現,并且它們之間沒有其他代碼(甚至沒有私有成員)。

2.3 格式化

前提須知,下文中提及的塊狀結構是指類的主體,方法或構造函數。

花括號

if,else,for,do,while 等語句塊使用花括號,即使花括號內容是空的或者只有一行語句。

對于內容非空的花括號塊,遵循以下規則:

左括號前不換行

左括號后換行

右括號前換行

右括號后換行,如方法塊,構造函數,類的主體括號情況下才換行。有些整體搭配不換行,例如esle前面的右括號,try塊的右括號等。

return () -> { while (condition()) { method(); }};return new MyClass() { @Override public void method() { if (condition()) { try {something(); } catch (Exception e) {recover(); } } else if (otherCondition()) { somethingElse(); } else { lastThing(); } }};

對于一些空內容的塊,以下兩種方式都可接受:

void doNothing() {} void doNothingElse() { }

縮進

關于一些塊結構等的縮進,建議2個空格,并且注釋也最好和代碼縮進保持一致。

每行一個聲明

每個語句后都有一個換行符,不要將多行語句都寫在同一行。

列數限制

Java代碼的列數限制為100個字符,一個字符是指一個Unicode字符。除非另有說明,否則超出該限制的任何行都必須進行換行。

不過也有一些例外可以超過此限制,例如:

Javadoc中的長URL或長的JSNI方法引用 package和import語句 注釋中的命令行,因為可能需要將其拷貝到shell中執行

不要水平對齊

水平對齊是在下一行的代碼中添加一些空格,致使與上一行的某個標識符對齊。語法允許這樣做,但是不推薦,因為后續可能會載修改代碼,可能導致不再對齊,然后再對齊的話需要浪費額外的時間精力。

// 這是推薦的,按正常的一個空格即可private int x;private Color color;// color和x對齊,沒必要private int x;private Color color;

枚舉類

如果一個枚舉常量有方法或者注釋,在每個枚舉常量的逗號后面,最好換一行再定義下一個枚舉常量。

private enum Answer { YES { @Override public String toString() { return 'yes'; } }, NO, MAYBE}

如果一個枚舉常量沒有有方法或者注釋,則可以不換行。

private enum Suit { CLUBS, HEARTS, SPADES, DIAMONDS }

變量聲明

每個變量聲明語句只聲明一個變量,不要使用 int a, b;這種多變量的聲明。但是for循環的頭部中可以接受多個變量聲明 。

需要時才聲明,不要在代碼塊的開頭就聲明局部變量,而是應該在靠近使用局部變量的地方聲明它們,以最小化它們的作用域。局部變量應該聲明的時候就進行初始化,或者聲明后,要立即初始化。

數組

[]方括號應該是類型的一部分,而不是變量,所以應該使用String[] args,而不是 String args[]。

Switch語句

在Switch代碼塊內,如果一個case小代碼塊直接穿透到下一個case(例如沒有以break,continue,return或者拋異常結尾),則需要在最后一個case后面注釋說明原因;最后一定要寫default塊,即使沒有執行任何代碼,但是如果switch的是枚舉類型,并且case列出所有的枚舉值了,可以不用寫default。

switch (input) { case 1: case 2: prepareOneOrTwo(); // 這里說明為什么穿透,case1和case2的情況下也要執行case3的內容 case 3: handleOneTwoOrThree(); break; default: handleLargeNumber(input);}

修飾符

類或者成員變量的定義使用修飾符時,按以下順序進行修飾。

public protected private abstract default static final transient volatile synchronized native strictfp

字面量

long類型的值,數字后面加大寫的L,禁止使用小寫的l,因為l和1很像,容易誤導。例如300000L而不是300000l。

三、標識符命名規則

package命名規則

package的包名全部小寫,而且不要出現下劃線(_),例如使用com.nobody.chenpi,而不是com.nobody.chenPi 或者com.nobody.chen_pi。

類命名規則

類名遵循UpperCamelCase規則,即大寫字母開頭的駝峰規則。類名使用名詞或者名稱短語,例如Person,GoodPerson。接口使用名稱或者名稱短語,有時也可以使用形容詞或者形容詞短語,例如Readable。

測試類名字以需要測試的類的名字開頭,并且以Test結尾,例如HashTest 。

方法命名規則

方法命名遵循lowerCamelCase規則,即小寫字母開頭的駝峰規則。方法名詞使用動詞或者動詞短語,例如sendMessage。

常量命名規則

常量名稱全部大寫,并且單詞之間用下劃線分隔開。

private static final Long MAX_NUM = 10000L;

還有需要Google代碼風格規則就不一一講解了,感興趣的可以到google官方查看。

IDEA 配置 Google Java Style

點擊File(文件)?> Setting(設置) ?> Editor(編輯) ?> Code Style(代碼風格),然后再點擊Scheme右邊的設置按鈕,Import Scheme,IntelliJ IDEA code style xml。最后選中本地下載好的xml文件。

Java黑科技之通過Google Java Style 文件配置IDEA和Ecplise代碼風格

然后為選中導入的主題取個名稱,在最上面Scheme選項選中我們的主題確定即可。

Java黑科技之通過Google Java Style 文件配置IDEA和Ecplise代碼風格

然后我們在使用IDEA開發代碼過程中,使用快捷鍵(默認是ctrl + alt + L,也可以修改設置這個快捷鍵),即可按google風格進行格式化代碼。

package com.nobody.exception;import lombok.Getter;/** * @Description 自定義通用異常枚舉類 * @Author Mr.nobody * @Date 2020/10/23 * @Version 1.0 */@Getterpublic enum CommonErrorEnum implements BaseErrorInfo { /** * 成功 */ SUCCESS('200', '成功!'), /** * 請求的數據格式不符! */ BODY_NOT_MATCH('400', '請求的數據格式不符!'), /** * 未找到該資源! */ NOT_FOUND('404', '未找到該資源!'), /** * 服務器內部錯誤! */ INTERNAL_SERVER_ERROR('500', '服務器內部錯誤!'), /** * 服務器正忙,請稍后再試! */ SERVER_BUSY('503', '服務器正忙,請稍后再試!'); private String errorCode; private String errorMsg; CommonErrorEnum(String errorCode, String errorMsg) { this.errorCode = errorCode; this.errorMsg = errorMsg; }}四、Ecplise 配置 Google Java Style

路徑:Window - Preferences - Java - Code Style - Formatter - Import,然后導入xml文件,最后選擇GoogleStyle,保存即可。

Java黑科技之通過Google Java Style 文件配置IDEA和Ecplise代碼風格

到此這篇關于Java黑科技之通過Google Java Style 文件配置IDEA和Ecplise代碼風格的文章就介紹到這了,更多相關配置IDEA和Ecplise代碼風格內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美午夜一区| 欧美精品成人一区二区三区四区| 欧美日韩在线电影| 欧美激情在线| 国产精品中文有码| 亚洲精品成人天堂一二三| 欧美浪妇xxxx高跟鞋交| 中文精品一区二区三区| 看电视剧不卡顿的网站| 亚洲一级二级在线| 最好看的中文字幕久久| 亚洲国产精品成人久久综合一区| 日韩午夜小视频| 欧美在线啊v一区| 免费不卡亚洲欧美| 中文精品一区二区三区| 91香蕉视频mp4| 国产一区二区三区四区五区入口 | 亚洲精品久久久久久国产精华液| 91精品国产综合久久久蜜臀图片| 亚洲成人黄色影院| 国产精品久久久久久久蜜臀| 日韩精品最新网址| 欧美精品久久天天躁| 欧美色偷偷大香| 欧美中文字幕| 欧美一区=区| 亚洲一区精彩视频| 中文欧美日韩| 国产精品尤物| 色域天天综合网| 欧美调教femdomvk| 欧美日韩国产成人在线免费| 欧美日韩美女一区二区| 欧美蜜桃一区二区三区| 日韩午夜精品电影| 日韩一级成人av| 精品久久久三级丝袜| 久久精品人人做人人爽97| 久久夜色精品一区| 国产精品久久毛片| 亚洲精品成人悠悠色影视| 亚洲欧洲av另类| 一区二区三区中文字幕| 亚洲午夜精品一区二区三区他趣| 亚洲一二三四区不卡| 日韩精品乱码av一区二区| 欧美猛男gaygay网站| 欧美精品一二三| 日韩欧美中文字幕公布| 精品处破学生在线二十三| 26uuu国产在线精品一区二区| 久久精品视频免费观看| 自拍av一区二区三区| 亚洲制服丝袜av| 免费看黄色91| 色综合夜色一区| 国产精品资源| 日韩欧美一级二级三级久久久| 久久夜色精品一区| 亚洲欧洲色图综合| 日精品一区二区| 成人av第一页| 国产欧美一区二区色老头| 91成人免费在线视频| 精品国产一区二区三区忘忧草| 久久女同性恋中文字幕| 中文字幕亚洲综合久久菠萝蜜| 亚洲一区二区精品视频| 国产91精品免费| 亚洲国产片色| 91精品国产91热久久久做人人| 久久日一线二线三线suv| 亚洲精品久久久蜜桃| 久久精品久久综合| 9i看片成人免费高清| 国产精品夜夜夜| 欧美一级黄色录像| 国产精品久久久久永久免费观看 | 国内一区二区三区在线视频| 久久免费一区| 国产亚洲精品7777| 久久激情五月婷婷| 影音先锋亚洲电影| 日韩午夜激情免费电影| 一区二区三区鲁丝不卡| 国产激情精品久久久第一区二区 | 精品国产乱码久久久久久闺蜜| 国产精品网站在线| 午夜精品福利在线| 欧美在线播放一区二区| 91黄色激情网站| 中文字幕第一页久久| 老司机午夜精品| 亚洲神马久久| 欧美高清在线一区| 国产99一区视频免费| 久久av一区二区三区亚洲| 久久影视一区二区| 韩国三级在线一区| 欧美资源在线| 日韩美女精品在线| 成人动漫精品一区二区| 老鸭窝毛片一区二区三区| 欧美国产精品一区二区| 国产呦精品一区二区三区网站| 一区精品在线| 91精品国产综合久久蜜臀| 五月激情综合网| 一区视频在线| 国产精品久久久久影院色老大| 成人黄色免费短视频| 欧美日韩精品电影| 三级一区在线视频先锋| 国产手机视频一区二区| 久久久久高清精品| 久久国产成人午夜av影院| 国产一区导航| 国产精品国产三级国产普通话99| 成人a区在线观看| 91精品福利在线一区二区三区| 日韩国产欧美一区二区三区| 国产精品手机在线| 一区二区三区不卡在线观看| 精品动漫一区| 国产精品免费免费| 91视频观看视频| 精品国产乱码久久久久久久久| 国内精品伊人久久久久av一坑| 色哟哟精品一区| 日日夜夜免费精品| 日本久久电影网| 日本大胆欧美人术艺术动态| 亚洲一区二区三区色| 99久久精品免费精品国产| 欧美videos大乳护士334| 精品亚洲国产成人av制服丝袜| 久久在线视频| 免费人成精品欧美精品| 欧美日韩专区在线| 日韩高清在线电影| 欧美日韩你懂得| 高清成人免费视频| 久久奇米777| 精品1区2区| 亚洲综合区在线| 新狼窝色av性久久久久久| 亚洲自拍偷拍欧美| 色婷婷av一区二区| 精品亚洲免费视频| 久久精品一区二区| 影音先锋亚洲电影| 午夜电影久久久| 欧美三日本三级三级在线播放| 国产精品综合av一区二区国产馆| 日韩一区二区免费电影| 欧美日韩国产三区| 亚洲一区在线观看网站| 久久美女性网| 国产精品18久久久久久久网站| 久久久精品中文字幕麻豆发布| 欧美jjzz| 亚洲成av人片一区二区| 91精品国产综合久久香蕉麻豆| 91免费看片在线观看| 一区二区三区成人| 欧美美女bb生活片| 国产一区二区三区四区hd| 天堂一区二区在线| 欧美一区二区在线播放| 精品999在线观看| 国产真实乱对白精彩久久| 欧美一卡二卡三卡| 黄色亚洲在线| 看电影不卡的网站| 久久精品在这里| 日本丶国产丶欧美色综合| 国产99精品国产| 亚洲激情五月婷婷| 日韩精品影音先锋| 亚洲一区三区电影在线观看| 国产iv一区二区三区| 亚洲乱码国产乱码精品精的特点| 欧美另类z0zxhd电影| 亚洲黄网站黄| 麻豆国产精品官网| 国产精品天天看| 欧美精品v日韩精品v韩国精品v| 影音先锋久久精品| 成人免费视频国产在线观看| 午夜精品aaa| 国产婷婷色一区二区三区在线| 色婷婷av一区二区三区大白胸| 欧美影视一区| 国产一区二区免费视频| 一区二区三区电影在线播| 亚洲精品在线观看视频| 一本一道久久a久久精品| 黑人一区二区三区四区五区| 国产高清久久久|