一、面向对象的三大基本原则
1.封装
曾无意看到有网友这样说过一句话,觉得有点意思“基本的变量已经不再浮游于一大段一大段的程序中了,他们已经放弃了这种自由自在的存在方式,而是安稳的寄居于庞大而蹒跚的对象内部,与外界隔开来,通过迂回曲折的间接途径与外部世界联系和通信。而这些对象就是这些基本变量的生存机器。”(引)。那封装到底是什么意思,有哪些好处?
所谓的封装就是把我们生活中客观存在的事物抽象封装成类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。简单的来说,一个类就是一个封装了数据以及操作这些数据的代码逻辑实体。在一个对象的内部,某些代码或者某些数据是私有的,不能被外界使用。通过这种方式,对象对内部数据提供不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。(比如:抽象人为Person类,某些属性可以是公开的,如:年龄、身高、体重,但某些属性是私有的,如:DNA序列。我们不可以提供公开的方法去修改DNA的序列,否则可能导致不可预料的事情)。
2.继承
“不要重复制作轮子”这句话在我看来有点以偏概全的意思,其实我更希望它是“不要重复制作烂轮子”。对于已经成熟的、存在的东西你可以把它变为
自己的。比如刚出生的baby就继承了人的一些基本属性和基本的动作,这些与生俱来的东西是人类进化中慢慢传承下来的。继承父类方法后我们甚至可以
将其重写,让其变的更快、更好,将其发挥的更有价值。
当然继承有多种方式:有“继承”,也有“组合”;继承"实现方式有实现继承和接口继承。(自行问度娘吧,我们只谈谈思想)。
3.多态
“云想衣裳花想容,春风拂槛露华浓。”《妖猫传》中唯一让我记忆很深刻的诗句。李白说不是写给杨贵妃的,而是写给自己心上人的。而高力士说是李白写给杨贵妃的。管他们怎么去说,怎么去想,不同人对同一事物有不同的理解,多态也一样。想法多种,行为多种。不管是天生就会哇哇大哭(继承父类的哭),还是后天心力憔悴的哽咽、痛哭,我们自身不断的给自身添加新的哭法(重写、重载),这就是多态。
菜鸟原创,求轻喷。