java 基礎(chǔ)之JavaBean屬性命名規(guī)范問(wèn)題
java 基礎(chǔ)之JavaBean屬性命名規(guī)范問(wèn)題
JavaBean屬性名要求:前兩個(gè)字母要么都大寫,要么都小寫
下面我們來(lái)找找如果不遵循這個(gè)規(guī)范是個(gè)什么樣子??
因?yàn)楸救诉€沒(méi)有用反射來(lái)通過(guò)不規(guī)范的屬性名來(lái)查找相應(yīng)的屬性值,所以以下的結(jié)論都是我的猜測(cè)。如果有錯(cuò)誤歡迎大家來(lái)指正?。?!
package com.domain;
import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
class Test{
private String AA;
private String Bb;
private String cC;
private String dd;
public String getAA() {//如果通過(guò)AA屬性名查找屬性值,能成功
return AA;
}
public void setAA(String aA) {
AA = aA;
}
public String getBb() {//如果通過(guò)Bb來(lái)查找屬性值,不能成功,必須通過(guò)bb來(lái)查找
return Bb;
}
public void setBb(String bb) {
Bb = bb;
}
public String getcC() {//如果通過(guò)cC來(lái)查找屬性值,能成功
return cC;
}
public void setcC(String cC) {
this.cC = cC;
}
public String getDd() {//如果通過(guò)dd來(lái)查找屬性值,能成功
return dd;
}
public void setDd(String dd) {
this.dd = dd;
}
}
public class JavaBean_02 {
public static void main(String[] args)throws Exception {
BeanInfo beanInfo = Introspector.getBeanInfo(Test.class);
PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors();
for(int i=0;i<pds.length;i++){
System.out.println(pds[i].getName());
}
}
}
/*輸出:
AA
bb
cC
dd
*/
很明顯,遵循規(guī)范寫出來(lái)的get方法是很美觀的。
通常屬性名是要和 包名、類名、方法名、字段名、常量名作出區(qū)別的:
首先:必須用英文,不要用漢語(yǔ)拼音
1:包(package):用于將完成不同功能的類分門別類,放在不同的目錄(包)下,包的命名規(guī)則:將公司域名反轉(zhuǎn)作為包名。比如www.sohu.com 對(duì)于包名:每個(gè)字母都需要小寫。比如:com.sohu.test;該包下的Test類的全名是:com.sohu.Test.Java 。
如果定義類的時(shí)候沒(méi)有使用package,那么java就認(rèn)為我們所定義的類位于默認(rèn)包里面(default package)。
2:類:首字母大寫,如果一個(gè)類由多個(gè)單詞構(gòu)成,那么每個(gè)單詞的首字母都大寫,而且中間不使用任何的連接符。盡量使用英文。如ConnectionFactory
3:方法:首單詞全部小寫,如果一個(gè)方法由多個(gè)單詞構(gòu)成,那么從第二個(gè)單詞開(kāi)始首字母大寫,不使用連接符。addPerson
4:字段:與方法相同。如ageOfPerson
5:常量:所有單詞的字母都是大寫,如果有多個(gè)單詞,那么使用下劃線鏈接即可。
如:public static final int AGE_OF_PERSON = 20; //通常加上static
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Java調(diào)用SSE流式接口并流式返回給前端實(shí)現(xiàn)打字輸出效果
在Web開(kāi)發(fā)中,有時(shí)我們需要將文件以流的形式返回給前端,下面這篇文章主要給大家介紹了關(guān)于Java調(diào)用SSE流式接口并流式返回給前端實(shí)現(xiàn)打字輸出效果的相關(guān)資料,需要的朋友可以參考下2024-08-08
maven依賴關(guān)系中的<scope>provided</scope>使用詳解
這篇文章主要介紹了maven依賴關(guān)系中的<scope>provided</scope>使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
SpringCloud使用Feign實(shí)現(xiàn)遠(yuǎn)程調(diào)用的使用示例
Feign是一個(gè)基于注解的HTTP客戶端庫(kù),它允許您將HTTP請(qǐng)求轉(zhuǎn)換為聲明式的Java接口,本文主要介紹了SpringCloud使用Feign實(shí)現(xiàn)遠(yuǎn)程調(diào)用的使用示例,感興趣的可以了解一下2023-09-09
利用Java實(shí)現(xiàn)復(fù)制Excel工作表功能
這篇文章主要給大家介紹了關(guān)于如何利用Java實(shí)現(xiàn)復(fù)制Excel工作表功能的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
Windows同時(shí)安裝兩個(gè)版本JDK并實(shí)現(xiàn)動(dòng)態(tài)切換JAVA8或JAVA11的方法
這篇文章主要給大家介紹了關(guān)于Windows同時(shí)安裝兩個(gè)版本JDK并實(shí)現(xiàn)動(dòng)態(tài)切換JAVA8或JAVA11的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-11-11
Java struts2 package元素配置及實(shí)例解析
這篇文章主要介紹了Java struts2 package元素配置及實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
在Java中實(shí)現(xiàn)可見(jiàn)性(visibility)的主要方法詳解
這篇文章主要介紹了在Java中實(shí)現(xiàn)可見(jiàn)性(visibility)的主要方法詳解,在Java中,使用關(guān)鍵字volatile和使用鎖(如synchronized關(guān)鍵字或 java.util.concurrent包中的鎖)來(lái)確保對(duì)共享變量的修改在多線程環(huán)境中能夠正確地被其他線程所觀察到,需要的朋友可以參考下2023-08-08

