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)
江山如画的头像江山如画管理团队
什么是 Python ?Python 有哪些优势?为什么学 Python ?
上一篇 2018年10月18日 上午8:41
createStatement参数详解,带参数与不带参数的区别
下一篇 2018年10月23日 下午3:55

99%的人还看了以下文章

  • Python编程案例-4行代码绘制股票趋势图(numpy+matplotlib)

    新手学习Python编程案例,每日编写一个小程序! import numpy as np import matplotlib.pyplot as plt 时间轴 = np.arange(10) #print(时间轴) 股票价格轴 = 时间轴 * 2 + np.sin(时间轴) * 5 #print(股票价格轴) plt.plot(时间轴, 股票价格轴) pl…

    2023年1月26日
    38.4K0
  • Python+ 人工智能软件工程师要学习哪些课程?

    1. Python 软件开发基础 2. Python 高级编程 3. Python 全栈式 WEB 工程师 4. Python 爬虫工程师、大数据分析工程师、人工智能工程师

    2018年12月27日
    17.0K0
  • 5分钟快速入门AJAX

    什么是AJAX? 第一步:如何发出一个HTTP请求第二步:处理服务器的响应第三步:一个简单的例子第四步:与XML响应协同工作 什么是AJAX AJAX是一个新的合成术语,隐含了两个已经存在多年的JavaScript特性,但是直到最近,随着一些诸如Gmail、Google Suggest以及Google Maps的轰动,才被许多网络开发者所注意到。 我们所讨论…

    2020年4月4日
    8.0K0
  • python 期末复习-综合练习题

    十八、分别使用for循环和while循环求1+2+3+4+……+856的和 要求: 1、新建一个“sum.py”文件。 2、编写程序。 3、调试程序。 4、排除错误。 十九、输入一个数,判断奇数偶数 要求: 1、新建一个“number.py”文件 2、编写程序。 3、调试程序。 4、排除错误。 二十、分别使用for循环和while循环输出1到100之间的偶数…

    2023年6月15日
    6.2K0
  • oracle 计算时间差,包含年、月、日、时、分、秒

    在做系统时,如图书管理系统、车辆管理系统、事务管理系统等,经常需要我们计算两个日期相差多少天,图书是否应该归还,事情是否完成等。 今天给大家分享oracle 中如何计算时间差! oracle时间差是以天数为单位,所以换算成年月,日 select floor(to_number(sysdate-to_date(‘2018-11-02 15:55:03’,’yy…

    2018年2月13日
    5.0K0
  • 两个简单的Pycharm激活方法分享

    一、Pycharm激活码激活 优点:Window、Mac、Ubantu都稳定有效,关键是这种激活方式不会产生其他影响 缺点:需要修改hosts文件 修改hosts文件 将0.0.0.0 account.jetbrains.com添加到hosts文件最后,注意hosts文件无后缀,如果遇到无法修改或权限问题,可以采用覆盖的方法去替换hosts文件 修改后请检查…

    2020年3月14日
    7.7K0

发表回复

登录后才能评论