一、两种编程思想
面向过程编程(Procedure Oriented Programming 简称为POP)
是一种基本的编程思想,是将一件事情按流程逐步实现。这种思想强调事情完成的过程,分析步骤写出相应的代码。
如猜拳游戏,每一个步骤都能按顺序用代码描述出来,逻辑清晰。但如果逻辑复杂,如象棋游戏,则无法使用POP的思想实现。
C语言就是一门标志性的面向过程编程语言。
面向对象编程思想(Object Oriented Programming 简称OOP )
是当前主流的编程思想,将解决问题的所有参与对象
创建出来,赋予对象对应的
行为
和
属性
让这些对象互相配合完成,实现最终效果。 这种思想致力于将计算机中的世界,描述的和现实中一致。
面向对象的三大特性(封装、继承、多态)
封装
使用
private
关键字对属性进行修饰,可以防止除自身类之外的地方对该属性进行访问。
这样可以保护关键属性,隐藏类内部的实现细节,再对外提供一组公开的
get/set
方法用于对该属性的赋值和读取。
继承
类
A
可以通过
extends
关键字继承类
B
。
语法:
class
类
A extends
类
B。
类
A
称为
子类
、派生类、衍生类、
subClass。
类
B
称为
父类
、基类、超类、
superClass。
继承后,子类可以访问父类中非私有的属性和方法。
不同的子类中相同的代码,都可以定义在父类中,减少子类中的代码冗余。
如小孩类和老人类都有姓名、年龄等属性,都有吃、睡等方法,那么就可以定义一个人类,将这些属性和方法写在里面,让小孩类和老人类继承人类。
继承的特点
如果多个类之中有相同或类似的代码,可以将这些代码提出来定义在一个公共的类中,这个类就是
父类。再让那些类去继承这个父类,这样就能减少子类的重复代码。
子类对象可以直接访问父类中非私有的属性和方法。
子类可以对父类中的方法进行拓展或覆盖,这称为方法重写,重写后,子类对象再调用该方法时,
执行的是重写后的内容。
java
中是单继承,一个子类只能有一个父类,一个父类可以有多个子类。
java
中可以多重继承,类
A
可以继承类
B
,类