对象、抽象、封装、继承、多态
在面向对象的程序设计方法中,各种事物被称为对象。
对象包含两个方面:属性和方法。
属性一般指的是对象的静态特征,比如姓名、年龄、住址,薪水等,可以用变量表示的。
方法一般指的是对象的行为,以及能对对象进行的操作,比如升学、加薪等,可以用函数表示的。
方法可以对属性进行操作,比如”加薪“方法会修改”薪水“的属性等
将同一类事物的共同特点概括出来,这个过程叫做抽象。
在完成抽像后,通过某种语法形式,将数据(即属性)和用以操作的算法(即方法)捆绑在一起,在形式上写成一个整体,即为”类“,这个过程叫做封装。
通过封装可以将对象的一部分属性和方法隐藏起来,让这一部分的属性和方法对外不可见,而留下来的另一部分属性和方法对外可见,作为对对象进行的操作接口。
在编写一个类的时候,以现有的类作为基础,使得新类从现有的类”派生“而来,从而达到代码扩充和代码重用的目的
多态是指不同的种类的对象都具有名称相同的行为,而具体行为的实现方式却有所不同。
游戏中的弓箭手和刀斧手都会有名为”攻击“的行为,但是两者的实现方式不同,前者是通过射箭实现攻击,后者则是通过劈砍实现攻击。