博客列表 >对面向对象的理解

对面向对象的理解

Whitney的博客
Whitney的博客原创
2020年03月16日 10:19:031346浏览
对面向对象的理解

一、面向对象的三大特征:封装、继承、多态二、什么是封装?

封装是把具体是无的特性属性和通过这些特性属性来实现一些动作的具体方法放到一个类里面。

简单来说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实现体。在一个对象内部,某些代码或某些数据可以是私有的,不能被外界访问,通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。

三、什么是继承?

继承是指父类的相关属性,可以被子类重复使用,子类无需在自己的类里面重新定义一次,直接使用即可。而对于自己类里面需要用到的新的属性和方法,子类就可以自己来扩展了。

通俗来说,继承类似于生物学上的遗传,就是子类的一些特生是来源于父类的,儿子遗传了父亲或者母亲的一些性格,或者相貌,又或者是运动天赋。

四、什么是多态?

父类或接口定义的引用变量可以指向子类或具体实现类的实例对象。提高了程序的拓展性。

通俗来讲,我们有一些方法在父类中已经定义好了,但是子类自己在使用的时候并不符合本身的需求。例如:计算工资的方法已经在父类中定义过了,但是普通员工的计算工资方法与技术经理的计算工资方法是不一样的,这个时候我们就需要在子类里面将父类定义的计算工资的方法按照子类的需求重新实现一遍。

多态包含了重载与重写。

1、什么是重载?

重载就是类里面相同方法名不同形参的情况,可以是形参类型不同或者形参个数不同,或者形参顺序不同,但是不能使返回值的类型不同。

2、什么是重写?

重写就是把子类从父类中继承下来的方法重新写一遍,这样,父类的相同的方法就被覆盖了。

参考链接:

https://www.cnblogs.com/zhuifeng-mayi/p/9221455.htmlhttps://www.jianshu.com/p/3f290a92ca86

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议