美文网首页
04面向对象编程(OOP)

04面向对象编程(OOP)

作者: 雪梦_93d4 | 来源:发表于2020-07-12 16:27 被阅读0次

默认情况下,Python解释器会搜索当前目录、所有已安装的内置模块和第三方模块,搜索路径存放在sys模块的path变量中

面向对象编程的三大特点:数据封装、继承和多态

封装:

把客观事物用抽象的类代表,并且类可以控制自身数据与方法的可见性

既然Student实例本身就拥有这些数据,要访问这些数据,就没有必要从外面的函数去访问,可以直接在Student类的内部定义访问数据的函数,这样,就把“数据”给封装起来了

封装类的数据和逻辑,不用知道内部实现的细节

继承:

当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类、父类或超类(Base class、Super class)。

子类获得了父类的全部功能,子类也可以定义自己的属性和方法

多态:

同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果

父类或接口声明的变量可以引用子类对象,这就叫多态

应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。大大提高程序的可复用性。//继承 

派生类的功能可以被基类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性可维护性。//多态的真正作用

访问限制:

如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线__,在Python中,实例的变量名如果以__开头,就变成了一个私有变量(private),只有内部可以访问,外部不能访问

要访问可以添加get_方法,要获取可以添加set_方法:

class Student(object):

def__init__(self, name, score):

    self.__name = name 

    self.__score = score

实例属性和类属性

千万不要对实例属性和类属性使用相同的名字,因为相同名称的实例属性将屏蔽掉类属性。

实例属性属于各个实例所有,互不干扰;

类属性属于类所有,所有实例共享一个属性;

不要对实例属性和类属性使用相同的名字,否则将产生难以发现的错误。

相关文章

  • PHP面向对象基础总结

    (一):面向对象编程OOP OOP(Object-Oriented Programming), 面向对象的编程)技...

  • PHP面向对象基础总结(转载整理)

    (一):面向对象编程OOP OOP(Object-Oriented Programming), 面向对象的编程)技...

  • 面向对象

    OOP 指什么?有哪些特性 面向对象编程(Object Oriented Programming,OOP,面向对象...

  • 对象_原型

    OOP 指什么?有哪些特性 面向对象编程(Object Oriented Programming,OOP,面向对象...

  • 面向对象浅析

    ### 面向对象编程和面向对象编程语言 面向对象编程的英文缩写是 OOP,全称是 Object Oriented ...

  • 面向对象基础

    面向对象编程包括: 面向对象的分析(OOA) 面向对象的设计(OOD) 面向对象的编程实现(OOP) 面向对象思想...

  • 整理java(1)

    首先java是面向对象编程语言(oop:Object Oriented Programming 面向对象编程)...

  • 编程思想

    编程思想 面向对象编程 OOP:Object-Oriented Programming(面向对象编程) 字段 fi...

  • Python面向对象继承

    面向对象继承 面向对象编程 (OOP),英语全称:Object Oriented Programming,面向对象...

  • 九月上--编程思想

    编程思想 1.oop思想 OOP:ObjectOrientedProgramming,面向对象编程(程序设计...

网友评论

      本文标题:04面向对象编程(OOP)

      本文链接:https://www.haomeiwen.com/subject/jazgcktx.html