为什么传值,非得get,set这样来进行。
直接classA.intA这样用不好的地方是什么?哪位兄弟能给个 有说服力 的理由。

解决方案 »

  1.   

    老兄,现在有一个需求:在classA中访问classB的属性,要求classA只能读取classB的属性值,而不能修改。你怎么做呢?通过类直接访问属性能做到吗?
    但是,借助java的四个权限修饰符,将属性定义为private,属性对应的setter方法定义为private(你还可以不写setter方法),getter方法定义为public,就可以轻松实现。
      

  2.   

    JavaBean 在 Sun 站点上有个规范的样例,它的主要目的是为了像 VB 那样支持 IDE 的可视化开发,让我们拖一个组件到窗口中,然后改向个属性,它就能显示出来,这个过程在修改 UI 和附加事件的时候可以不需要写代码,就能提高开发效率。虽然现实中好的 UI 框架都是写出来的而不是拖放出来的,但是 SDK 给了我们这种在它的这个 JavaBean 基础上扩展 IDE 的机会和规范。而在其它地方的用到 JavaBean 主要是直接利用一个已经成形的规范而不是需要重新起草新的。它们要求支持 JavaBean 规范无非是因为它们要求目标类必须有一个公有的无参构造方法,属性可以通过 setXXX/getXXX 方法操作,这可以通过反射让程序自动化。
      

  3.   

    那样的话就不是封装了, 也就违背了java(面向对象)的本质了。 这好比一个人, 内脏器官是人的属性, 你只能通过人体外部的表象去看这人的那个器官有问题, 而不能直接把内脏取出来。
      

  4.   

    JAVABEAN 就是自定义的对象!数据存取都很方便和规范
    用CLASSA这种表现的,1是不专业 2凌乱
      

  5.   

    java中通过修饰符来实现数据的安全,通过修饰符限定权限,而set、get是对限制的数据进行访问。这个纯属个人
    片面理解,呵呵
      

  6.   

    就算是javabean,里面的private properties也可以直接访问,因为属性的可视性在运行期是可以强制修改的,所以所谓的封装性也只是表面意义上的。
    几乎所有的框架都是通过反射方式寻求每个javabean中各个属性的getter和setter,以访问它们,这已经是通用的模式了,不理解也得接受= =|||,至于为什么,那原因每本书的第一章里面都解释的一样
      

  7.   

    java的基本:面向对象,作为对象,就会有属性及方法。
      

  8.   

    因为它们要求目标类必须有一个公有的无参构造方法.难道是这个?就因为有这个目标,所以就用bean了?
      

  9.   

    JavaBean 在 Sun 站点上有个规范的样例,它的主要目的是为了像 VB 那样支持 IDE 的可视化开发,让我们拖一个组件到窗口中,然后改向个属性,它就能显示出来,这个过程在修改 UI 和附加事件的时候可以不需要写代码,就能提高开发效率。虽然现实中好的 UI 框架都是写出来的而不是拖放出来的,但是 SDK 给了我们这种在它的这个 JavaBean 基础上扩展 IDE 的机会和规范。而在其它地方的用到 JavaBean 主要是直接利用一个已经成形的规范而不是需要重新起草新的。它们要求支持 JavaBean 规范无非是因为它们要求目标类必须有一个公有的无参构造方法,属性可以通过 setXXX/getXXX 方法操作,这可以通过反射让程序自动化。
      

  10.   

    通过builder模式创建的安全bean是否能通过反射修改值???????
      

  11.   

    javabean中的setter AND  getter  就好像 你人一样  ,万物皆对象。人的外貌是  属性人的动作和行为  就是  JAVABEAN中的 方法 ;
      

  12.   

    这样做的话,在这个类中对其自身的属性有更高的可控性,比如在使用 setName 时,除了 this.name = name; 之外,还可以做一些其他的事情。如果直接把 name 属性给 public 了,那么就没有任何可控性了。
      

  13.   

    你先看两本java基础书在来问吧
      

  14.   

    javabean从数据库存取角度来说,好处是在于为你的数据定义一个格式。比如,你每一个数据库表可创建一个相映的javabean,每一个页面的表单也可以创建一个javabean。而它的缺点也在于此,比如,当页面的表单的javabean与数据库表相应的javabean属性不一致时要做了大量的转换工作而烦躁,有时,我会为这些烦躁转转工作而对javabean存在的意义提出了质疑。
    其实也不一定只用javabean
    如果一个系统主外键转多,想程序数据格式有更高的灵活性,你可以用MAP来存取数据。
    然而程序可读性和灵活性是不成正比的。使用了MAP数据的活性是大大提高了,而可读性也会比用javabea存储数据的方法有所下降。至于你你选择用不用javabean。只要你的设计在各方面的需求上找到一个很好的平衡点,那你就行了。