JavaBean规范

(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     |不允许                                             |    不允许

————————————|——————————————————|——————————————————————————

转载于:https://www.cnblogs.com/dr50289/archive/2013/01/06/2848430.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/403189.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

USB 设备类代码表

USB Class Codes 官方地址:http://www.usb.org/developers/defined_classUSB defines class code information that is used to identify a device’s functionality and to nominally load a device driver based on that functionality. The information is conta…

Redis安装和使用指南

From: http://mwt198668.blog.163.com/blog/static/48803692201132141755962/ Redis安装指南 作者:Red_Ant 时间:2011-04-20 简 介 redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string…

员工打卡课后小项目

public class Fm{//员工类public string Id { get; set; }public string Name { get; set; }public int Age { get; set; }public string Gender { get; set; }} public class SI{//打卡类public string Name { get; set; }public DateTime Begin { get; set; }public DateTime…

通过后端接口,预览文件流图片;预览和下载文件流

后端接口返回的是文件流 1.如果是pdf等文件,通过iframe结合文件流,做到文件的下载和预览 // 预览文件openPdf1 () {// 后端下载文件流的地址接口let url G_CGI_PHP.group.documentDownload ?id this.paymentImage1const newWindow window.open()ne…

SAP里删除trace文件的方法

1. stat.DAT:性能统计文件。 这个统计文件增长很快,不小心就涨到900MB以上。 对应的OS路径: D:\usr\sap\DEV\DVEBMGS00\data 处理方法: ST03N -> Expert mode -> Collector and Perfromance DB ->Statistics Records & File -> D…

HID设备类详解

HID设备类 Base Class 03h (HID – Human Interface Device) This base class is defined for devices that conform to the HID Device Class Specification found on the USB-IF website. That specification defines the usable set of SubClass and Protocol values. V…

DatePicker动态设置picker-options 中的disabledDate属性操作;

一、场景&#xff1a; 有两个时间选择器A和B。A的时间任意选&#xff0c;B的时间必须选择A之后的时间。此时就需要给B设置可选时间区间&#xff0c;而且是动态的值&#xff0c;既动态设置picker-options 中的disabledDate。 二、代码片段 html&#xff1a; <el-col :span&…

Linux使用笔记: 设置Samba服务器中新建文件/目录的权限

From: http://easwy.com/blog/archives/set-file-directory-attribute-for-linux-samba/ 通过Samba服务器实现windows和Linux之间的文件共享&#xff0c;相信是绝大多数人的选择。通常我们都会使用Samba的缺省配置&#xff0c;这样&#xff0c;每次通过Samba从Windows向Linux中…

[转]序列化悍将Protobuf-Net,入门动手实录

最近在研究web api 2&#xff0c;看了一篇文章&#xff0c;讲解如何提升性能的&#xff0c; 在序列化速度的跑分中&#xff0c;Protobuf一骑绝尘&#xff0c;序列化速度快&#xff0c;性能强&#xff0c;体积小&#xff0c;所以打算了解下这个利器 1&#xff1a;安装篇 谷歌官方…

单线程写多线程读安全的结构体

大型网络游戏服务器的逻辑大多采用单线程设计&#xff0c;典型的就是一个线程处理一个区域(地图),跨区域通过跳转实现&#xff0c;这样&#xff0c;不同区域的对象在逻辑上是不发生交互的。 这样在一台服务器上开启N个线程就可以处理N个区域。但一个线程处理一个区域毕竟有其瓶…

Linux 内核打印级别

printk的打印级别 #define KERN_EMERG "<0>" /* system is unusable */ #define KERN_ALERT "<1>" /* action must be taken immediately */ #define KERN_CRIT "<2>" /* critical conditions */ #define KERN_ERR "…

时间戳转日期;日期转时间戳;

一、 拓展:如何用js将日期转换成时间戳 new Date(2022-06-01).getTime() //1654041600000 //这个safari无法将时分秒转时间戳// 推荐用这个&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&…

swoole之代码热更新实现

From: http://www.th7.cn/Program/php/201405/211057.shtml 持续的思考: 本人参与的swoole项目有幸被很多朋友使用&#xff0c;我也大力向周边的一些朋友推荐&#xff0c;随着swoole的版本迭代更新&#xff0c;已经足够稳定了&#xff0c;在阿里&#xff0c;腾讯&#xff0c;yy…

题目1168:字符串的查找删除

题目1168&#xff1a;字符串的查找删除 时间限制&#xff1a;1 秒 内存限制&#xff1a;32 兆 特殊判题&#xff1a;否 提交&#xff1a;5092 解决&#xff1a;2097 题目描述&#xff1a;给定一个短字符串&#xff08;不含空格&#xff09;&#xff0c;再给定若干字符串&#x…

C# 文件操作详解(三)---------Directory类

前面两篇介绍了File类和FileInfo类&#xff0c;对于文件的操作基本够用&#xff0c;但是后面还会补充一下FileStream相关的操作&#xff0c;例如StreamReader和StreamWriter的内容。本文主要介绍Directory类的使用&#xff0c;让我们一起看一下Directory类为我们提供了哪些操作…

js实现复制并能保留原格式粘贴;vue中点击复制粘贴功能;vue复制功能(不需要插件);

使用场景&#xff1a;vue项目中遇到点击按钮&#xff0c;复制文本的功能。复制成功后可以黏贴。 <div click"copyDesc">复制</div>methods:{copyDesc () {let url 这是复制的内容&#xff0c;可以是data的变量值或传递的参数等换行文字1换行文字2 let…

Libusb开发教程一 安装

1. 从官网下载需要使用的离线资源包&#xff1a; 进入 libusb.info 的 Download 页 下载 libusb-1.0.9.tar.bz2 下载 libusb-compat-0.1.4.tar.bz2 2. 实验平台 OS: Ubuntu16.04 Kernel: 4.4.0 3. 安装过程 <1> 拷贝步骤一中的离线包到 Linux 系统目录&#xff0c;一般…

在网上接外包

在网上接外包。这个需要一些沟通能力和英文能力 以下是一些可以接到外包的网站&#xff1a; 国内&#xff1a; http://www.taskcity.com/很难接到外包&#xff0c;今年在该网站只完成两个项目。 http://www.sxsoft.com/情况同上&#xff0c;一个小项目。 国外&#xff1a; http…

ocLazyLoad angular 按需加载

ionic 框架 1.引用 index.html 加载 <script type"text/javascript" src"lib/oclazyload/ocLazyLoad.min.js"></script> 2.注入 angular.module(starter, [ionic, oc.lazyLoad]) 3.配置 .state(app.myinfo, {url: /user/myinfo,views: {menuCo…

WIN10解包分区和磁盘分区教程

From: https://thinkpad.bbs.taobao.com/detail.html?postId5390151 新机到手第一件事情就是要系统解包和磁盘分区。建议在安装和卸载软件之前&#xff0c;进行磁盘分区&#xff0c;不然有可能只能分出原空间的50%&#xff0c;想要分更多空间&#xff0c;只能还原系统了。 一、…