JavaBean是公共Java类,需要满以下条件:

1、所有属性为private
2、提供默认无参构造方法
3、提供getter和setter
4、实现serializable接口

具体为:

(1)JavaBean 类必须是一个公共类,并将其访问属性设置为 public  ,如: public class user{......}
(2)JavaBean 类必须有一个空的构造函数:类中必须有一个不带参数的公用构造器

(3)一个javaBean类不应有公共实例变量,类变量都为private  ,如: private int id;
(4)属性应该通过一组存取方法(getXxx 和 setXxx)来访问,一般是IDE(Eclipse、JBuilder) 为属性生成getter/setter 方法

一般JavaBean属性以小写字母开头,驼峰命名格式,相应的 getter/setter 方法是 get/set 接上首字母大写的属性名。例如:属性名为userName,其对应的getter/setter 方法是 getUserName/setUserName。

但是,还有一些特殊情况:

1、如果属性名的第二个字母大写,那么该属性名直接用作 getter/setter 方法中 get/set 的后部分,就是说大小写不变。例如属性名为uName,方法是getuName/setuName。

2、如果前两个字母是大写(一般的专有名词和缩略词都会大写),也是属性名直接用作 getter/setter 方法中 get/set 的后部分。例如属性名为URL,方法是getURL/setURL。

3、如果首字母大写,也是属性名直接用作 getter/setter 方法中 get/set 的后部分。例如属性名为Name,方法是getName/setName,这种是最糟糕的情况,会找不到属性出错,因为默认的属性名是name。

所以在JavaBean命名时应该注意符合以上命名规范。

附下表,看看吧:

————————————————————————————————————————————————————————

属性名/类型                    |                       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)

——————————————————————————————————————————————————————
Xcoordinate/Double       | 不允许                                             |  不允许

———————————————————————————————————————————————————————

 
 
 
注意事项:
当为boolean 类型的属性时,假如属性名为:isActive,编辑器生成的访问器不会是getIsActive(),会用isActive()替代。所以当使用boolean 类型的属性时,不要以is开头.
 
 
 

JavaBean 规范的更多相关文章

  1. JavaBean规范

    JavaBean规范 (1)JavaBean 类必须是一个公共类,并将其访问属性设置为 public  ,如: public class user{ …}(2)JavaBean 类必须有一个空的构造函 ...

  2. Java基础84 javaBean规范

    1.javaBean的概述 1.javaBeam(咖啡豆)是一种开发规范,也可以说是一种技术.  2.JavaBean就是一个普通java类,只要符合以下规定才能称作为javaBean:        ...

  3. jsp常用标签和标签库及javaBean规范

    1 常用标签forward,pararm,include <jsp:forward page=""></jsp:forward> <jsp:param ...

  4. jsp学习--JavaBean定义和在Jsp中使用JavaBean

    一.JavaBean 1.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点:>>这个Java类必须具有一个无参的构造函数>>属性必须私 ...

  5. 12、Jsp加强/自定义标签/JavaBean

    1 Jsp加强回顾 Jsp加强 1)Jsp的9大内置对象 request       HttpServletRequet response     HttpServletResponse config ...

  6. (spring-第12回【IoC基础篇】)JavaBean的属性编辑器

    在spring实例化bean的最后阶段,spring利用属性编辑器将配置文件中的文本配置值转换为bean属性的对应值,例如: 代码0011 <bean id="car" cl ...

  7. Java编程风格与命名规范整理

    基本命名规范 包命名 包名按照域名的范围从大到小逐步列出,恰好和Internet上的域名命名规则相反. 由一组以“.”连接的标识符构成,通常第一个标识符为符合网络域名的两个或者三个英文小写字母. Pe ...

  8. JavaBean的使用

    JavaBean主要用于实现一些业务逻辑或封装一些业务对象 通常将JavaBean中的属性设置为私有的(private),但需要为其提供公共的(public)访问方法,也就是所说的getXXX()方法 ...

  9. Java编程规范整理

    分享一份网友整理的编程过程中的命名规范 包命名 包名按照域名的范围从大到小逐步列出,恰好和Internet上的域名命名规则相反. 由一组以"."连接的标识符构成,通常第一个标识符为 ...

随机推荐

  1. IOS Masonry自动布局

    之前项目用Frame布局,这个项目登录用了VFL,后来觉得用Masonry,前天布局TableViewCell时用了下 ,觉得还不错. #import "Masonry.h" #i ...

  2. Firebird 表字段查询

    select rdb$relation_fields.rdb$relation_name table_name, rdb$relations.rdb$description table_des, rd ...

  3. Eclipse常用快捷键之技巧篇

    如何让你阅读代码如虎添翼?使用快捷键可以让你快到飞起来~ 显示类的方法和属性:ctrl+o ctrl+o能够看到你的类的层次结构,使你搜索该类某个方法更加的方便 显示类的继承:ctrl+T ctrl+ ...

  4. RabbitMQ入门教程系列

    https://blog.csdn.net/column/details/18247.html

  5. 一图解析 React组件生命周期 (React Component Lifecycle)

     React LifeCycle v1 参考官方文档作成 可放大  参考:https://reactjs.org/docs/react-component.html 数字补丁数字补丁数字补丁数字补丁数 ...

  6. Redis概述与安装

    一.什么是Redis ​ 由c语言编写的,以键值对的形式存储的数据库. 缓存技术(驻留在内存中) ​ key:value ​ 支持5种数据类型: ​ String ​ Hash(哈希表) ​ list ...

  7. Ubuntu16.04下安装MATLAB 2016b!完美运行

    目录 1.下载MATLAB 2016b 2.挂载iso 3.安装MATLAB 4.破解 5.快捷键与运行 1.下载MATLAB 2016b 下载matlab 2016b for linux(可以百度搜 ...

  8. C# 简单的loading提示控件

    自己画一个转圈圈的控件 using System; using System.Collections.Generic; using System.ComponentModel; using Syste ...

  9. Excel Metadata

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  10. 02--CSS的继承性和层叠性

    一 继承性 css有两大特性:继承性和层叠性 面向对象语言都会存在继承的概念,在面向对象语言中,继承的特点:继承了父类的属性和方法.那么我们现在主要研究css,css就是在设置属性的.不会牵扯到方法的 ...