面向对象的编程语言有封装、继承、多态、抽象4个主要特征
-
封装:
面向对象的封装就是把描述一个对象的属性和行为的代码封装在一个“模块”中,也就是一个类中,属性用变量定义,行为用方法进行定义,方法可以直接访问同一个对象中的属性。通常情况下,只要记住让变量和访问这个变量的方法放在一起,将一个类中的成员变量全部定义成私有的,只有这个类自己的方法才可以访问到这些成员变量,这就基本上实现对象的封装,就很容易找出要分配到这个类上的方法了,就基本上算是会面向对象的编程了。把握一个原则:把对同一事物进行操作的方法和相关的方法放在同一个类中,把方法和它操作的数据放在同一个类中。
例如,人要在桌上吃饭,一共涉及三个对象:人,桌,饭。而吃饭有菜、汤之类的食物,菜和汤显然是饭的属性,如果将它们在类中定义成了私有的成员变量,那么,吃饭的方法必须分配给饭,它才能访问到菜和汤这两个属性,人以后只是调用饭的吃饭方法,吃饭这个方法不应该分配在人这个对象上,这就是面向对象的封装性,即将对象封装成一个高度自治和相对封闭的个体,对象状态(属性)由这个对象自己的行为(方法)来读取和改变。
-
继承:
在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并可以加入若干新的内容,或修改原来的方法使之更适合特殊的需要,这就是继承。继承是子类自动共享父类数据和方法的机制,这是类之间的一种关系,提高了软件的可重用性和可扩展性。
-
多态:
多态就是对象拥有多种状态:引用多态和方法多态
-
引用多态:父类的引用可以指向本类对象、父类的引用可以指向子类的对象。
-
方法多态:创建本类对象时,调用的方法为本类的方法;创建子类对象时,调用的方法为子类重写的方法或继承的方法。
-
存在多态的必要条件:继承,重写。
-
-
抽象:
抽象就是找出一些事物的相似和共性之处,然后将这些事物归为一类,这个类只考虑事物的相似和共性之处,并且会忽略与当前主题无关的那些方面,将注意力集中在与当前目标有关的方面。