理解面向对象编程,首先要理解抽象。在生活中,万物皆对象,这个时候就需要去组织事物,找到事物之间的共性和个性。一般地,事物都有属性和方法,当把一类事物共有的属性和行为提取出来,就可以形成一个模板(在 Scala 中即所谓的类),这种研究问题的方法称为抽象。面向对象有三大特性:

  • 封装
  • 继承
  • 多态

    封装的概念

    封装就是把抽象出的数据和对数据的操作封装在一起,数据被保护在内部,程序的其他部分只有通过被授权的操作(成员方法)才能对数据进行操作
    👉 好处

  • 可以隐藏实现细节

  • 可以对数据进行验证,保证安全合理
  • 可以加入业务逻辑

👉 如何体现封装

  • 对类中的属性进行封装
  • 通过成员方法、包实现封装

    继承的概念

    作用:可以代码复用,提高代码的扩展性和维护性
    思路:当多个类存在相同的属性和方法时,从这些类中抽象出父类,在父类中定义公共的属性和方法,子类继承父类即可

    多态的概念