5.0 第5章 面向对象(上) 本章要点

第5章 面向对象(上) 本章要点

  • 定义类、成员变量和方法
  • 创建并使用对象
  • 对象和引用
  • 方法必须属于类或对象
  • Java方法的参数传递机制
  • 递归方法
  • 方法的重载
  • 实现良好的封装
  • 使用packageimport
  • 构造器的作用和构造器重载
  • 继承的特点和用法
  • 重写父类方法
  • super关键字的用法
  • 继承和多态
  • 向上转型和强制类型转换
  • 继承和组合的关系
  • 使用组合来实现复用
  • 构造器和初始化块的作用及区别
  • 静态初始化块

类可被认为是一种自定义的数据类型,所有使用类定义的变量都是引用变量。
类用于描述客观世界里某一类对象的共同特征,而对象则是类的具体存在,
Java程序使用类的构造器来创建该类的对象。

面向对象的三大特征

封装继承多态.

访问控制修饰符

Java提供了privateprotectedpublic三个访问控制修饰符来实现良好的封装,

extends关键字

提供了extends关键字来让子类继承父类,子类继承父类就可以继承到父类的成员变量和方法,如果访问控制允许,子类实例可以直接调用父类里定义的方法。

继承和组合

继承是实现类复用的重要手段,除此之外,也可通过组合关系来实现这种复用,从某种程度上来看,继承和组合具有相同的功能。

继承和组合的区别

  • 使用继承关系来实现复用时,子类对象可以直接赋给父类变量,这个变量具有多态性,编程更加灵活:
  • 而利用组合关系来实现复用时,则不具备这种灵活性。

构造器和普通初始化块

构造器用于对类实例进行初始化操作,构造器支持重载,如果多个重载的构造器里包含了相同的初始化代码,则可以把这些初始化代码放置在普通初始化块里完成,初始化块总在构造器执行之前被调用

静态初始化块

除此之外,Java还提供了一种静态初始化块,静态初始化块用于初始化类,在类初始化阶段被执行。

静态初始块 普通初始化块 构造器的区别

执行顺序不同

最先执行静态初始化块,然后执行初始化块,然后执行构造器

执行时机和次数不同

  • 静态初始化块只会在类初始化阶段执行一次
  • 创建一个对象,就会执行一次初始化块和构造器.

先初始化父类

如果继承树里的某一个类需要被初始化时,系统将会同时初始化该类的所有父类。