什么是python面向对象

python

提到面向对象,总是离不开几个重要的术语:多态(Polymorphism),继承(Inheritance)和封装(Encapsulation)。Python也是一种支持OOP的动态语言,本文将简单阐述Python对面向对象的支持。

在讨论Python的OOP之前,先看几个OOP术语的定义:

类:对具有相同属性和方法的一组对象的描述或定义。

对象:对象是一个类的实例。

实例(instance):一个对象的实例化实现。

标识(identity):每个对象的实例都需要一个可以唯一标识这个实例的标记。

实例属性(instance attribute):一个对象就是一组属性的集合。

实例方法(instance method):所有存取或者更新对象某个实例一条或者多条属性的函数的集合。

类属性(classattribute):属于一个类中所有对象的属性,不会只在某个实例上发生变化

类方法(classmethod):那些无须特定的对性实例就能够工作的从属于类的函数。

封装

封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。 

对于面向对象的封装来说,其实就是使用构造方法将内容封装到 对象 中,然后通过对象直接或者self间接获取被封装的内容。

class Foo:

    def __init__(self, name, age ,gender):

        self.name = name

        self.age = age

        self.gender = gender

    def eat(self):

        print "%s,%s岁,%s,吃奶" %(self.name, self.age, self.gender)

    def he(self):

        print "%s,%s岁,%s,喝水" %(self.name, self.age, self.gender)

    def shui(self):

        print "%s,%s岁,%s,睡觉" %(self.name, self.age, self.gender)

a = Foo('jack', 10, '男')

a.eat()

a.he()

a.shui()

b = Foo('rose', 11, '女')

b.eat()

b.he()

b.shui()

以上是 什么是python面向对象 的全部内容, 来源链接: utcz.com/z/521408.html

回到顶部