sun的命名规范

1 ,类名要首字母大写,后面的单词首字母大写 

2 ,方法名的第一个单词小写,后面的单词首字母大写 

3 ,变量名的第一个单词小写,后面的单词首字母大写 

为了使 JavaBean 的属性名和存取方法都符合规范, Sun 在 JSR 文档中规定了属性名和存取方法名的映射规则: ① 属性名对应的存取方法为 ge t/set 加上首字母大写的属性名,如属性 userName 的存取方法为 setUserName/getUserName 。这样属性名和存取方法都符合命名规范。这个规则强制的,如果不符合规则就会出现异常。 

但是这里有一个例外规则, Sun 考虑在偶然的情况下会有全大写的属性名,所以又定了一条规则: ②如果属性名的第二个字母是大写,则它的存取方法是 set/get 加上属性原名。 

上面两个属性与存取方法的映射规则如下: 

① 属性名对应的存取方法为 ge t/set 加上首字母大写的属性名,如属性 userName 的存取方法为 setUserName/getUserName 。 

②如果属性名的第二个字母是大写,则它的存取方法是 set/get 加上属性原名。 

应用这两个规则时有两个特殊情况需要注意 ,属性名的第一个单词只有一个字母,如 s Name ,按照第 2 条映射规则,它的存取方法为 setsName/getsName 。这样存取方法名就与方法名的命名规范有一定的出入,按规范应该是 setSName/getSName 。所以最好不要让属性名的第一个单词只有一个字母。另一个特殊情况是起了一个不符合规范的属性名 Sname ,首字母大写后面的小写,这种情况既没有映射规则,也是不允许出现的。下面用一个表格说明映射规则。 


属性名/类型  getter 方法  setter 方法  
xcoordinate/Double public Double getXcoordinate() public void setXcoordinate(Double newValue) 

xCoordinate/Double public Double getxCoordinate() public void setxCoordinate(Double newValue) 

XCoordinate/Double public Double getXCoordinate() public void setXCoordinate(Double newValue) 
 

eg:javabean的配置要满足sun命名规则

<%@ page language="java" contentType="text/html; charset=GB2312"%>
<%request.setCharacterEncoding("GBK"); %>
<!DOCTYPE html>
<html>
<head>
<title>JavaBean的使用</title>
</head>
<body>
<jsp:useBean id="data" scope="page" class="ch4.UserBean"/>
<jsp:setProperty property="name" name="data" param="name"/>
<jsp:setProperty property="num" name="data"  param="do"/>
 姓名:<font color="#663366"><jsp:getProperty property="name" name="data"/></font><br>
职业:<font color="#663366"><jsp:getProperty property="num" name="data"/></font><br>
</body>
</html>

public class UserBean {
    private String Name;
    private String  Num;
    public UserBean() {
    }
    public String getName() {
        return Name;
    }
    public void setName(String name) {
        Name = name;
    }
    public String getNum() {
        return Num;
    }
    public void setNum(String num) {
        Num = num;
    }  

}
 

猜你喜欢

转载自blog.csdn.net/Dingwensheng1222/article/details/81201096