第六章 封装、继承、多态

1. 封装

1.1 什么是封装

​ 封装的意义是确保对用户隐藏“敏感”数据。隐藏对象内部的复杂性,只对外公开简单和可控的访问方式。我们可以通过 Java 的修饰符来实现这一目标。

1.2 Java 修饰符

​ 到目前为止,你应该已经非常熟悉出现在几乎所有示例中的 public 关键字:

1
public class People

​ public 关键字就是其中一个访问修饰符,这意味着它可以用于设置类、属性、方法和构造函数的访问权限级别。

​ 对于所有的修饰符,我们可以分为两类:

  1. 访问修饰符 - 用于控制访问权限
  2. 非访问修饰符 - 不能控制访问权限,但是能够提供其他功能

访问修饰符

​ 修饰符可以被作用在类、属性和方法中。对于,你可以使用的访问修饰符可以是 public 和 default:

访问修饰符 含义
public 任何其他类都可以访问这个类
default(默认) 该类只能由同一包中的类访问。当你没有指定修饰符时使用,这是默认的访问级别。

​ 对于属性、方法和构造函数,可以使用以下修饰符之一:

访问修饰符 含义
public 所有类都可以访问该代码
private 代码只能在其声明的类中访问
default(默认) 代码只能由同一包中的类访问。当你没有指定修饰符时使用,这是默认的访问级别。
proctected 代码可以在同一个包和子类中访问。你会在后续学到更多关于子类和父类的知识

非访问修饰符

​ 对于非访问修饰符,有一些我们熟悉的修饰符 finalstatic,也有一些我们还未见过的修饰符,我们会在后续课程中进行更加具体的解释,这里先罗列出来,让大家先了解有哪些非访问修饰符。

​ 对于,你可以使用的非访问修饰符有:

非访问修饰符 含义
final 这个类不能被其他类继承(你将在继承一节中了解更多关于继承的信息)
abstract