我发现创建一个类
比如
pow pp=new pow();
然后这个类的所有方法
pp.XX
都可以使用,但是那些类的方法可以设置为public和private等等
private是比较节省空间的,那不如我把所有方法都设置为private
反正通过PP都可以正常使用,那public属性的反而会出现调用错误,比如别的类也有个public名称一样的方法
不如都设置为private更好吗
比如
pow pp=new pow();
然后这个类的所有方法
pp.XX
都可以使用,但是那些类的方法可以设置为public和private等等
private是比较节省空间的,那不如我把所有方法都设置为private
反正通过PP都可以正常使用,那public属性的反而会出现调用错误,比如别的类也有个public名称一样的方法
不如都设置为private更好吗
这两个要根据实际情况来用,不是说换就换的。
当一个类的成员定义为public,就能够在类外访问,包括它的派生类。
当一个成员定义为private,它仅能在类内访问,不能被它的派生类访问。比如一个类要继承它的父类并且重写父类中的方法,那么父类中的方法就应该是public的。
比如你肯定希望你有些私有的东西,只能自己用,就设置成private,这就是oo思想。
private使得你的程序更安全,变量一般都是用private申明,然后再本类通过 set/get 方法控制该属性。并不是每个方法都要设置为private,有时外部类要调用你的方法,那要扩大访问范围。
范围小到大:private->protected->friendly->public
public:所有类可见。
pirvate:只有同一类内部的方法可见,在有就是内部类也可以访问到。
默认(friendly):包内可见。
protected:继承可见
然后这个类的所有方法
pp.XX
都可以使用?private的可以访问吗?你是在本类中调用的吧如果是在其他类中调用private方法是不可以用pp.xx调用的
要不然private还有啥意义?
楼主还没有明白访问限制符的作用
范围小到大:private->protected->friendly->public
public:所有类可见。
pirvate:只有同一类内部的方法可见,在有就是内部类也可以访问到。
默认(friendly):包内可见。
protected:继承可见
去看一下 private->protected->friendly->public
的帮助文档
这两个要根据实际情况来用,不是说换就换的。
当一个类的成员定义为public,就能够在类外访问,包括它的派生类。
当一个成员定义为private,它仅能在类内访问,不能被它的派生类访问。
http://e188e.cn为您提供
尽量封装类内部的一切属性。只对外暴露提供的方法。
private 和public用的是最多的。private一般修饰属性,而且一个大的系统内部的类的属性一般是用private修饰的,只对外提供public的get和set方法,还可以加上控制逻辑。
protected用的很少,一般是希望子类重写的方法才用protected修饰。
更正:范围小到大:private->friendly->protected->public
private : 类内部可访问
friendly: 类内部、包内部可访问
protected: 类内部、包内部、其子类可访问
public :所有的都可访问
--------------------------------
反正都可以用,直接面向过程编程好了,写什么对象