Python面向对象编程的核心概念知识点是什么

技术Python面向对象编程的核心概念知识点是什么这篇文章给大家介绍Python面向对象编程的核心概念知识点是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。面向对象编程的核心概念:封装,抽象,多

本文向您介绍Python面向对象编程的核心概念知识点。内容非常详细。感兴趣的朋友可以参考一下,希望对你有所帮助。

面向对象编程的核心概念:封装,抽象,多态、继承、组合

封装:

第一个概念:在面向对象编程中,对象将变量和方法集中在一个地方,即对象本身。

第二个概念:指隐藏类的内部数据,避免客户端代码直接访问。

分类数据:

def__init__(self):

self.list1=[22,33,44,55,66]

defchang_list(self,index,num):

self.list1[index]=num

数据1=数据()

data1.list1[0]=100

打印(data1.list1)

数据2=数据()

data2.chang_list(0,100)

Print(data2.list1)

抽象:

是指剥离事物的许多特征,只保留最基本的物质的过程。在面向对象编程中,当使用类来建模对象时,将使用抽象技能。

重要bc

类动物(元类=abc。ABCMeta):

@abc.abstractmethod#抽象对象方法

defsound(self):

及格

@abc.abstractclassmethod#抽象类方法

defest 1(cls):

及格

@abc.abstractstaticmethod#抽象静态方法

灵巧2(自我):

及格

狗(动物):

defsound(self):

印刷('旺旺')

@classmethod

defest 1(cls):

打印(' classofmethod ')

@staticmethod

defest 2(:)

打印(' staticofmethod ')

狗=狗()

dog.sound()

dog.test1()

Dog.test1()

dog.test2()

dog . test 2()(

继承:

1),将公共属性和方法放入父类,只考虑唯一属性和方法。

2)重写父类的方法意味着重写父类的方法,在运行中只调用子类中重写的方法,不调用父类中的方法。

3)子类有一个父类,叫做单继承。一个子类可以有多个父类,它拥有父类的所有属性和方法。

班级学生:

定义学习(自我):

打印(“学生想学”)

defpractice(self):

打印(“学后练习”)

班级高年级(学生

):
    def study_compute(self):
        print("高中同学还要学习计算机")
hs=HighStudent()
hs.study()
hs.practice()
hs.study_compute()

多态:

1)、指的是为不同的基础形态(数据类型)提供着接口的能力,接口指的是函数和方法。

2)、顾名思义,多态就是多种表现形态的意思,它是一种机制,一种能力,而非某个关键词。它在类的继承中得以实现,在类的方法调用中得以体现。

3)、多态意味着变量并不知道引用的对象是什么,根据引用对象的不同表现不同的行为方式。

4)、多态以封装和继承为前提,不同的子类对象调用相同的方法,产生不同的执行效果。它可以增加代码的灵活度,以继承和重写父类的方法为前提,调用方法不会影响到类的内部设计

class Animals(object):
    def __init__(self,name):
        self.name=name
    def eat(self):
        print(self.name+" is eating")
class Cat(Animals):
    def __init__(self,name):
        super(Cat, self).__init__(name)
class Pig(Animals):
    def __init__(self,name):
        super(Pig, self).__init__(name)
class Person():
    def feedAnimal(self,animal):
        animal.eat()
cat=Cat("tom")
pig=Pig("peiqi")
tony=Person()
tony.feedAnimal(cat)
tony.feedAnimal(pig)

组合:

1)、通过组合技巧将一个对象作用变量保存在另一个对象中,可以模拟拥有关系。

2)、它是一种将对象或类组合成更复杂的数据结构或构件实现的方法。

3)、在组合中,一个对象可用于调用其他模块中的成员函数,这样一来,无需通过继承就可以实现基本功能的跨模块调用。

class Monkey():
    def __init__(self,name,owner):
        self.name=name
        self.owner=owner
class Persons():
    def __init__(self,name):
        self.name=name
mike=Persons("mike")
mickMouse=Monkey("goldeMonkey",mike)
print(mickMouse.owner.name)
class A(object):
    def a1(self):
        print("a1")
class B(object):
    def b1(self):
        print("b1")
        A().a1()
bb=B()
bb.b1()

关于Python面向对象编程的核心概念知识点是什么就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/112495.html

(0)

相关推荐

  • see过去分词,See这个单词中文是什么意思

    技术see过去分词,See这个单词中文是什么意思你好see过去分词,我是【老师说教】,很高兴为你解答。您的问题很简单。呵呵。知道很高兴帮助您解决您提出的问题。原句:See翻译: [si:] vt. 看见;理解;领会;v

    生活 2021年10月25日
  • Vue 全家桶介绍-超详细教程

    技术Vue 全家桶介绍-超详细教程 Vue 全家桶介绍-超详细教程Vue 全家桶介绍-超详细教程Vue 全家桶介绍Vue有著名的全家桶系列,包含了vue-router(http://router.vue

    礼包 2021年10月27日
  • mysql是不是关系型数据库系统

    技术mysql是不是关系型数据库系统本篇内容介绍了“mysql是不是关系型数据库系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够

    攻略 2021年12月2日
  • 部署SD-WAN之前要执行的三个步骤分别是什么

    技术部署SD-WAN之前要执行的三个步骤分别是什么部署SD-WAN之前要执行的三个步骤分别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。随着企业制

    攻略 2021年11月24日
  • Java嵌入脚本怎么快速解析多层 json

    技术Java嵌入脚本怎么快速解析多层 jsonJava嵌入脚本怎么快速解析多层 json,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。关于Json处理的开源

    攻略 2021年12月2日
  • C++怎么正确使用线程

    技术C++怎么正确使用线程这篇文章主要介绍“C++怎么正确使用线程”,在日常操作中,相信很多人在C++怎么正确使用线程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++怎么正确使用线程”

    攻略 2021年11月25日