java基础之修饰符如private,默认,protected,public

  private,默认,protect,public 的可见范围是越来越大的.

  都可以修饰域和方法.被修饰之后的域和方法,只能在对应的可见范围内使用.

  在可见的范围内使用是什么意思呢?private 的可见范围就是类自己内部,对外不可见,只能在本类的内部使用.如被private 修饰的构造函数就不能在其他类的的范围内被调用,也就是不能在其他类中通过new 创建这种类对象.而例如public 修饰的方法,则可以在任意的类内通过该类对象实例来调用,因为public 修饰的对所有类都可见.而被private 修饰的域和方法都不能在其他类内通过该类的实例直接调用.

  private 可见范围是类.只有同一种类的对象都可以存取.它是对类而不是对对象设限,所以Dog 可以看到别的Dog的私有部分,但Cat 就不能看到Dog的私有部分.参考《核心》P114,4.3.7 节

  private 可以修饰域和方法,还有内部类.private 修饰的内部类是怎样的呢?

  被private 修饰的内部类就相当于外部类的一个private 域.对外部是不可见的.

  默认 就是没有修饰符,默认是对包可见.就是说其他包不能继承默认修饰符的类.

  protected 包和子类可见.被修饰的域和方法,可以被不同包的子类继承.

  public 任何地方都可见.

 

原文地址:https://www.cnblogs.com/predisw/p/4730273.html