访问修饰符
介绍:Java为开发者提供了四种常见的访问修饰符
分别是–pubic protected 默认 private
每一个修饰符对应的限制范围都不一样
public
在“本类” ,“同一个包” ,“子类” ,“不同包中”,都能被访问
protected
在“本类” ,“同一个包” ,“子类” 能被访问
但是“在不同包”下不能被访问
(默认)什么都不加
在“本类” ,“同一个包” 能被访问
但是在“子类” ,“不同包中”不能被访问
private
只有在“本类” 能被访问
其他都不被访问
注意 ❗️
访问修饰符可以修饰类中的属性,成员方法,以及类
在修饰类中,只能使用默认 和public
封装
封装是Java面向对象编程的三大特征只有之一
简单的认识就是
通过将不想被他人公开知道信息时,也就是属性和方法,将这些封装装在一起,进行私有化,只有通过公开的方法来获取所需要的信息,相当于桥梁的作用.
步骤
- 对信息进行私有化,即加上private 修饰符
- 建立set方法来修改信息
- 建立get方法来获取信息
- 这些方法的修饰符必须时public,因为public是在上面四种情况下都能访问的
- 同时,在无参构造器和有参构造器中,要加入建立的set方法,才能防止封装失败
继承
继承 用来解决代码复用冗余的问题
继承是抽象出多个类当中的相同的属性和方法作为父类,作为子类只需要在类定义时,加上关键字extends,调用即可
子类会保持自己的所特有的属性和方法
class 子类 extends 父类{ }
注意事项和细节❗️
- 子类继承了父类的所有属性和方法,但是私有属性和方法不能在子类中直接访问,要通过父类建立公共方法访问(封装
- 子类必须调用父类的构造器,完成父类的初始化
- 在子类构造器中,若父类是只有无参构造器,那么在子类构造器当中不需要加任何的东西,默认调用
- 若父类是只有有参构造器,就需要在子类构造器当中添加关键字super,格式是super(参数列表),参数列表是与父类构造器的参数对应
- 若父类既有无参又有有参,则子类构造器都需要加上super()
- super使用时必须放在子类构造器的第一行,且只能在构造器中是使用
- super和this都是在构造器中使用,且都要用在第一行,所以构造器中,要么只有super,要么只有this
- Object是所有类的父类,默认的,在代码中不显示,但是实际存在的
- 父类构造器不只是一个父类,他还可以是其他类的子类,以此类推,可以有很多层,每次都需要调用父类构造器进行初始化,会一直往上回溯直到到达顶级父类Object
10.子类最多只能继承一个父类,Java是单继承机制,若需要继承另外一个父类的属性或方法,可以通过间接的方法进行继承