JavaBean的规范,javaBean中属性为什么要定义成private?

JavaBean就是遵循一定规范、完成某种功能的可重复使用的Java类。

javabean

JavaBean是一种JAVA语言写的可重用组件。

JavaBean就是java类 ,但要遵循一定的规范。

特点:

  1. 可以实现代码的重复利用
  2. 易编写、易维护、易使用
  3. 跨平台

程序开发过程中,一但编写好JavaBean,就可以把JavaBean想象为一个黑匣子,只需要知道这个组件的功能和如何使用它,不需要知道它里面是如何实现的,极大的方便了程序的开发。

JavaBean的书写规范

1.JavaBean是一个public的类。

2.类的构造方法必须是public的,无参数的。

3.类中声明的方法必须是public的。

4.JavaBean 所有的属性定义为私有的。

5.如果成员变量的名字是xxx,为了获取或更改成员变量的值,必须提供setXxx()和getXxx()方法。

setXXxx()和getXxx() 遵循的规范

(1)必须为public特性的方法。

(2)一般同一个属性的get方法和set方法成对使用,也可以单独使用。

(3)get方法的名字必须是getXxx(),set方法的名字必须为setXxx(),其中Xxx是第一个字母转换为大写的属性名。

(4)get和set方法书写形式:

public  < 属性类型>  getXxx ()

public  void  set Xxx (< 属性类型>   参数名)

get方法的返回类型必须与属性的数据类型一致,且不能带参数。

set方法返回类型必须为void,且只能带一个和属性类型相同的参数。

案例:编写第一个JavaBean

package com.ceshi;
public  class  Student
{ 	private String name;
 public Student() {   name=null;   }
 public  String getName()
 {  return name;   }
 public void setName(String newName)
 {  name=newName; }
}

javaBean中属性为什么要定义成private?

我可以定义成public,不提供get set方法,这样也是可以的呀,为什么还要定义为private?

如果实体类就没必要将属性都定义成private。控制权限的还有public、protected和private,完全没必要全部get、set。

javaBean中属性定义成private的原因如下:

1.对属性进行私有化封装,防止被随意修改,对外提供get,set方法,只能通过getter和setter修改,提高安全性。

2. 对字段的访问有时候不是简单的直接访问的,比如你可能只保存了brithday,而同时要输入age, 那么可以加个getAge(),在其中计算。

3.  Java Bean的规则有此要求,

get,set方法其实是对外暴露的一个受限接口,其实就是一种约定。命名约定+引入中间层,好处还是很多的,可以对get,set方法玩AOP,基于get,set方法的反射不会破坏对象数据。

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/2809.html

(0)
江山如画的头像江山如画管理团队
上一篇 2018年10月18日 上午8:41
下一篇 2018年10月23日 下午3:55

99%的人还看了以下文章

  • 最全!jsp连接各种数据库代码及读取数据实例

    有好多jsp初学者经常会问数据库怎么连接?我怎么连接不上数据库、语句怎么总是出错?所以中国网页设计写篇文章供大家参考,主要包括以下7种数据库的链接。 一、jsp连接MySQL数据库 二、jsp连接Sql Server7.0/2000数据库 三、jsp连接DB2数据库 四、jsp连接Informix数据库 五、jsp连接Sybase数据库 六、jsp连接Pos…

    2020年12月6日
    3.7K0
  • 赞!python 生成词云详细教程-最简单的中文词云生成代码

    pip install wordcloud pip install jieba wordcloud生成词云 效果图: 代码: from wordcloud import WordCloud import matplotlib.pyplot as plt #绘制图像的模块 import jieba #jieba分词 path_txt=’d://西游.txt’ …

    2023年6月2日 编程开发
    1.3K2
  • 500 Internal Server Error 错误原因及解决方法(图)

    500 属于服务器内部错误。如果其他网站可以打开,就这一网站打不开,那是该网站的服务器出了问题,跟你的电脑无关,如果其他网页都打不开,你就试着用工具修复一下浏览器。 500内部服务器错误的一般原因是IIS服务器无法解析ASP代码。 如:ASP语法出错、ACCESS数据库连接语句出错,文件引用与包含路径出错、使用了服务器不支持的组件如FSO等。 如果在Wind…

    2018年7月2日
    24.9K0
  • Java Vector可实现自动增长的对象数组

    java.util.vector提供了向量类(Vector)以实现类似动态数组的功能。创建了一个向量类的对象后,可以往其中随意插入不同类的对象,即不需顾及类型也不需预先选定向量的容量,并可以方便地进行查找。 对于预先不知或者不愿预先定义数组大小,并且需要频繁地进行查找,插入,删除工作的情况,可以考虑使用向量类。 向量类提供了三种构造方法: public ve…

    2020年8月20日
    2.1K0
  • servlet中如何使用Session?

    servlet中Session的用法 使用Servlet中的request对象获取session对象并输出其属性:HttpSession session = request.getSession(); request.setCharacterEncoding(“utf-8”); response.setContentType(“text/html;chars…

    2020年4月4日
    2.4K0
  • python 集合使用案例:选修课统计

    相关阅读:python 集合的使用,案例详解 本学期学校共开设了3门选修课,一个班有25位学生,选修的情况如下: 选修1号课程的同学有: set1 = {‘张三’, ‘李四’, ‘王五’, ‘马六’, ‘赵七’, ‘钱八’} 选修2号课程的同学有: set2 = {‘姬一’, ‘孙必’, ‘周冲’, ‘王五’, ‘方向’, ‘张玉’} 选修3号课程的同学有:…

    2020年1月22日
    8.0K0

发表回复

登录后才能评论