类和方法为什么要区分public private protected等,为什么不全部写成public的?

来源:百度知道 编辑:UC知道 时间:2024/05/26 08:23:40
类和方法为什么要区分public private protected等,为什么不全部写成public的?我知道它们的语法区别,在实际应用上有什么价值吗?举例谈谈

你在任何其他地方用到你写的类时,你不用管具体这个类怎么做的(private),你只要管这个类可以做什么(public)。。。
另一方面,也保证了整个类的安全,保证类在逻辑上的正确性,防止被其他的外类非继承函数访问改变数据成员

一般声明为private的可以理解为“只读”属性,即这个对象是被封装起来的,一般人看不到或者只能看,不能修改;
而一般声明为public的就是所谓的“公共”属性,即任何一个使用者都可以使用。
举个例子来说吧,声明一个账户class Account,账户里面包括账号、密码等等属性,还要包括取款、存款等行为(方法),想想看,一个客户到ATM上进行取款操作,他肯定要根据自己的账号取款吧,账号是固定的,不可以修改,因此要封装即private起来(我们可以设置一个getaccountNO()来看一下这个账号是多少);而取款的行为一定要public,因为取款的行为每个客户都可以使用,而且取款的多少传给参数就可以了。
记住,定义一个类,它其中的属性一般是private的,为的是保证安全型,而方法一般是public的。
多结合实际想一想问题就可以解决啦,祝你好运