为什么Java程序中习惯把成员变量定义为private,把成员方法定义为public?好多例子都是这样子。。

 我来答
阿咕噜
2014-08-24 · 从互联网慢慢上岸的程序员
阿咕噜
采纳数:107 获赞数:350

向TA提问 私信TA
展开全部
定义为private是为了保证安全性撒,当然你也可以定义为protect或者public,具体你可以去看看
public,private,protected 区别,http://blog.csdn.net/oonukeoo/article/details/4552109
追问
我知道区别,那四个访问控制符的区别,如果把变量定义为私有,那如果继承的类想要调用的话,那不是不能了吗,但是例子中好像都可以的样子,是通过方法调用的吗?
追答
看来你没有真正搞清楚他们之间的区别,定义为private的变量是不能被外部方法直接访问的,只能通过它定义的方法访问,如果继承类要访问这个变量,那就要把它定义为protected类型的
ccppv
2014-08-24 · TA获得超过2994个赞
知道大有可为答主
回答量:5074
采纳率:40%
帮助的人:2970万
展开全部
定义成private表示只有类的内部才能访问到。外面是访问不到的。
成员方法也可以是private的。这个要看你的业务需要。

一般来说,我们只需要暴露出必要的属性即可,外部需要的才会写成public
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
454182560
2014-08-24 · TA获得超过318个赞
知道小有建树答主
回答量:200
采纳率:100%
帮助的人:89万
展开全部
抽象的说,这是一种保护机制,不让自己这个类以外的方法去随便使用这个类的数据,可以保护他的数据,只能通过调用自己类的方法去操纵这些数据。这样会很安全
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
SYYZZ3
2014-08-24 · TA获得超过133个赞
知道小有建树答主
回答量:139
采纳率:0%
帮助的人:91.1万
展开全部
java 中字段是是私有(private)的要getset封装。固定的
public+方法名 是构造方法。
public void 方法 是你的类要被其他类调用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
黑白蛊惑
2018-11-22
知道答主
回答量:2
采纳率:0%
帮助的人:1631
展开全部
以你的图片为例,这样只能通过animal对象的set、get 方法来修改变量值,如果不设置为private,直接通过对象.变量如animal.legs就可以修改变量值了,这样不安全。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式