wuquanwangcsdn 2012-03-17 08:52
浏览 271
已采纳

不解为何java bean把成员变量设为私有,却提供了get,set方法

RT, 我经常是把成员变量设为public,感觉这样处理起来更方便。

用java多年了,这个小问题一直困扰着我。

  • 写回答

4条回答 默认 最新

  • lvxingang 2012-03-17 09:25
    关注

    private 目的是私有, 是不让别人用, get/set方法目的是让别人用. 这岂不矛盾了?
    你说的是这个问题吧.
    是这样的.private 是不让别人用, public 是让别人用, 但是有一种需求是让有的人用而让另外一些人不能用. 这时private/public的功能就出现短板了. 这时就有了set/get方法的用武之地了. 我们可以在set/get方法是设置, 如下:
    public set(某某某){
    if(你是一些人){
    你可以设置
    }else{
    对不起, 你没有设置的权限.
    }
    }
    可以说: get/set+private 的功能完全包含了private/public 的功能. 所以这也成了一种编程的习惯. 为什么张三会刀枪剑戟, 李四只会刀枪, 我要用李四而不用张三呢?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集