python 面向对象(初级)

2021-07-13 13:04

阅读:1173

标签:调用函数   多态   nim   面向对象编程   面向对象   hello   小白   函数   重复   

python 面向对象(初级)

概述:

  面向过程:根据业务逻辑从上到下垒代码.

  函数式:将某功能代码封装至函数中,日后便无需重复编写,仅调用函数即可

  面向对象:对函数进行分类和封装,让开发"更快更好更强..."

 

创建类和对象:

  面向对象编程是一种编程方式,此编程方式的落地需要使用"类"和"对象"来实现,所以,面向对象编程其实就是对"类"和"对象"的使用.

 

class Foo:

    # 创建类中的函数
    def Bar(self):
        print(bar)
    def Hello(self,name):
        print(我叫%s% name)

# 根据类Foo创建对象obj
obj = Foo()
obj.Bar()         # 执行Bar方法
obj.Hello(裴杰)    # 执行Hello方法

 

 

面向对象三大特性:

一.封装

封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容.所以,在使用面向对象的封装特性时,需要:

-将内容封装到某处

-从某处调用被封装的内容

# 创建类
class Foo:
    def __init__(self,name,age):   # 构造方法,根据类的创建对象时自动执行.
        self.name = name
        self.age = age

    def func(self):
        print(姓名:%s,年龄:%s % (self.name,self.age))

# 根据Foo创建对象
# 自动执行Foo类的 __init__ 方法
obj1 = Foo(裴杰,80)
obj2 = Foo(张博文,18)
obj1.func()
obj2.func()

 

二.继承

继承,面向对象中的继承和实现生活中的相同,即:子可以继承父的内容.

例如:

 

class Animal:
    def eat(self):
        print(%s 吃  % self.name)

    def drink(self):
        print(%s 喝  % self.name)

    def shit(self):
        print(%s 拉  % self.name)

    def pee(self):
        print(%s 撒  % self.name)

class Cat(Animal):
    def __init__(self,name):
        self.name = name
        self.breed = 

    def cry(self):
        print(喵喵叫)

class Dog(Animal):
    def __init__(self,name):
        self.name = name
        self.breed = 

    def cry(self):
        print(汪汪叫)

######## 执行 #########
c1 = Cat(裴杰家的小黑猫)
c1.eat()

c2 = Cat(裴杰家的小白猫)
c2.drink()

d1 = Dog(李承家的小傻裴)
d1.eat()

 

三.多态

python崇尚"鸭子类型"

class F1:
    pass

class S1(F1):
    def show(self):
        print(S1.show)

class S2(F1):
    def show(self):
        print(S2.show)

def Func(obj):
    print(obj.show())

s1_obj = S1()
Func(s1_obj)

s2_obj = S2()
Func(s2_obj)

 

python 面向对象(初级)

标签:调用函数   多态   nim   面向对象编程   面向对象   hello   小白   函数   重复   

原文地址:https://www.cnblogs.com/zbw582922417/p/9542466.html


评论


亲,登录后才可以留言!