把一个类的属性设为private的,然后写setXXX和getXXX函数,和把属性直接设为public的有什么区别?

解决方案 »

  1.   

    属性直接设为public不利于封装,任何人都可以随便修改该变量
    通过方法访问private变量可以将细节应藏在public 方法之后
      

  2.   

    用public的setXXX方法还不是一样可以随便修改变量??
      

  3.   

    Javabean的一种规范,也是一种良好的习惯吧Object obj = new Object();
    不希望 obj.属性 来获得值或设置值
    而是希望使用obj.set  obj.get 来操作属性
      

  4.   

    class a{
     private int i;
     
     set(String a){
       do something.......
       i=format(a)
       do something.......
     }}屏蔽细节
    }
      

  5.   

    楼主 别把set get 想的太简单啊里面可以处理很多复杂的业务逻辑并且可能调用类里的其他get set方法 或者属性那么以后程序升级维护的话 就可以直接修改set方法就可以了显的程序结构更清晰,易于维护