访问修饰符

public:

  • 公开,对外公开(同类(本类) 同包 子类 不同包)

    protected:

  • 受保护,对子类和同一个包中的类公开(同类 同包 子类)

    default(默认):

  • 没有修饰符,向同一个包的类公开(同类 同包)

    private:

  • 私有,只有类本身可访问,不对外公开(同类)

    注意事项:

  • 修饰符可以用来修饰类中的属性,成员方法以及类
  • 只有public 与 默认 才可修饰类
  • 成员方法的访问规则和属性完全

private关键字:

  • 是一个权限修饰符
  • 可以修饰成员(成员变量和成员方法)
  • 作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问

    针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作:

  • 提供get变量名()方法,用于获取成员变量的值,方法用public修饰
  • 提供set变量名(参数)方法,用于设置成员变量的值,方法用public修饰

权限修饰符

修饰符 同一个类中 同一个包中子类无关类 不同包的子类 不同包的无关类
private
默认default
protected
public

封装 (encapsulation)

封装概述:

  • 是面向对象三大特征之一(封装,继承,多态)
  • 是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,
  • 外界是无法直接操作的

封装原则:

  • 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现
  • 对隐藏信息的操作和访问成员变量private,提供对应的getXxx()和setXxx()方法

封装的好处:

  • 通过方法来控制成员变量的操作,提高代码的安全性
  • 把代码用方法进行封装,提高了代码的复用性

封装的实现步骤:

  • 将属性进行私有化
  • 提供公共的(public)set方法,用于对属性判断和赋值
  • 提供公共的(public)get方法,用于获取属性的值