python---面向对象

1、类的定义:
面向对象
类怎么用
面向对象
面向对象

定义一个类,函数定位到一个类,去操作它
类:一个模板
对象:通过模板具体做出来的东西
实例化:把模板做成具体东西的过程
self:本类对象

2、实例化

定义一个动物
这是一个类,模型,类名首字母大写
类的定义与调用函数
class Animal: #造动物模型 class是关键字
def fly(self):#(飞)
print("fly")
def eat(self):#吃东西
print("eat")
def yaoren(self):
print("咬人")
self.fly()#在这个类里可以调用

pkq = Animal() #实例化,具体的东西 皮卡丘 (你有一个对象)
bls = Animal() #实例化,具体的东西,暴龙兽

pkq.yaoren()#皮卡丘咬人
pkq.fly()#

bls.eat()#暴龙兽吃东西
bls.eat()#在吃
bls.fly()#

country = "中国" # 类变量,先去实例里面找再去变量里面找

3、构造函数、析构函数
class Animal:
def __init__(self,name):#构造函数,类在实例化的时候自动调用它,传个名字
self.name = name #执行这个函数,实例变量,#实例变量 (成员变量)

def __del__(self):
#析构函数,它在实例被销毁的时候会自动执行
print("析构函数")

def fly(self):
print(self.name+"fly")

def eat(self,food):
print(self.name+""+food)

def yaoren(self):
print(self.name+"咬人")
self.fly() #调用函数,飞走,在一个类里面

pkq = Animal('皮卡丘') #实例化
bls = Animal('暴龙兽') #实例化

#调用的函数 ,该调用调用,该有返回值有返回值
pkq.yaoren()
pkq.fly()

bls.eat("大萝卜")
bls.eat("大白菜")
bls.fly()

#析构函数执行,上面被销毁了自动执行
#方法一
pkq.yaoren
bls.eat("馒头")
#方法二
del pkq #del关键字删变量的,删除后就不在内存里面了
del bls
print("哈哈哈")
print("="*10) #字符串重复十次

4、类方法:
class Animal:
country = "中国" # 直接类里面定义 叫类变量

def __init__(self,name):
#构造函数,类在实例化的时候会自动调用它
self.name = name
#实例变量 (成员变量)

def __del__(self):
#析构函数,它在实例被销毁的时候会自动执行
print("析构函数")

def say(self): #说话
print(f"我是{self.name},我来自{self.country}")

def fly(self):
print(self.name+"fly")

def eat(self,food):
print(self.name+""+food)

def yaoren(self):
print(self.name+"咬人")
self.fly()

pkq = Animal('皮卡丘')
pkq.name = "亚古兽"
Animal.country = "日本" #类变量
pkq.say() # 皮卡丘 --->

bls = Animal("暴龙兽")
bls.say() #--->结果

5、

4、私有变量,私有方法:在变量或者方法前面加上"__",只能在类里面调用 除了类就不能被调用


    def __close(self):
self.__cur.close()
self.__connect.close()

 



posted @ 2021-11-12 09:59  王王的王  阅读(32)  评论(0)    收藏  举报