黑马程序员技术交流社区

标题: javaBean 问题 [打印本页]

作者: 邝雄伟    时间: 2013-2-1 16:40
标题: javaBean 问题
JavaBean是一种组件,可被复用。如果T为类型 N为属性名称
Public T getN()
Public void setN(T arg)
这是javaBean的书写格式。在javaBean的API中提供了一些类和方法  如:PropertyDescription类的实例可以描述Bean的属性。假设我们知道了某个javaBean的成员属性的名称,运用反射机制那么我们就可以通过该类提供的getReadMethod()方法读取到这个属性名称对应的值,还可以通过getWriteMethod()方法修改该属性的值。JavaBean中的成员属性一般都是私有的。也是一种封装,而它对外提供的这些方法却能访和修改,这样对javaBean的封装是一种破坏吗?


作者: 彭昆    时间: 2013-2-1 23:03
不是。封装并不是为了让某个字段不被访问,恰恰相反的就是封装只是为了让一类事物的相似属性进行集中操作。
零散的变量不如javabean对象方便,比如一个方法有十个参数,但这些参数可能可归于某类或几类的时候,这个时候我们就可以向上抽取javabean来进行封装。
在我们不提供getter和setter方法的时候,字段的操作通过对象直接“.”的方式无法进行响应处理,比如只读,或对字段进行一些运算。而通过setter和getter可在方法中进行实时处理,getter和setter方法只是隐藏了这些细节。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2