面向对象基础

面向对象基础
一.类的定义
一个类中包括:属性和方法,格式:
class 类名:(类名首字母大写)
属性
方法
创建一个对象,并调用对象的方法
变量名 = 类名()
变量名.方法()
实例为:
class Dog:
def eat(self):
print("狗在吃骨头")
dog1 = Dog()
dog1.eat
二.创建多个对象
class Dog:
def eat(self):
print("狗在吃骨头")
def introduce(self):
print("我的名字是{},我今年{}岁了".format(dog1.name,dog1.age)))
dog1 = Dog():
dog1.name = "泰迪"
dog1.age = 5
dog1.introduce()
dog2 = Dog():
dog2.name = "拉布拉多"
dog2.age = 3
dog2.introduce()
这样就创建了多个对象,但是每创建一个对象,我们都要重复给对象添加属性,所以有了下面的方法.
三,__init__
在python中遇见__(方法名)__此类称为魔法方法
__init__方法不需要手动调用,在对象初始化的时候自动调用
即给以上代码升级:
class Dog:
def __init__(self,self.name,self.age):
self.name = name
self.age = age
def introduce(self):
print("我的名字{},我今年{}岁了!".format(self.name,self.age))
dog1 = Dog("泰迪",8)
dog1.introduce()
dog2 = Dog("拉布拉多",3)
dog2.introduce()
四.__str__ 方法:
此方法一般用户格式化输出对象内容
class Dog:
def __init__(self,self.name,self.age):
self.name = name
self.age = age
def __str__(self):
return "我的名字是{},我今年{}岁了".format(self.name,self.age)
dog1 = Dog("泰迪",8)
dog2 = Dog("拉布拉多",3)
print(dog1)
print(dog2)
五.__del__方法:
当对象消亡(死了)的时候,自动调用这个方法,当我们想要在对象死亡的时候做些什么事情,可以使用这个方法
class Dog:
def __init__(self,self.name,self.age):
self.name = name
self.age = age
def __str__(self):
return "我的名字是{},我今年{}岁了".format(self.name,self.age)
def __del__(self):
print("{}朋友们再见了,我挂了!".format(self.name))
dog1 = Dog("泰迪",8)
dog2 = Dog("拉布拉多",3)
print(dog1)
print(dog2)
六.私有属性:
私有属性定义,在名字前面加上两个_
在Python中没有绝对的私有,其实当我们去定义私有属性的时候,会对这个属性名字去做处理
class Dog:
def __init__(self,self.name,self.age):
self.name = name
self.age = age
self.__age = age
def __str__(self):
return "我的名字是{},我今年{}岁了".format(self.name,self.age)
dog1 = Dog("泰迪",8)
dog2 = Dog("拉布拉多",3)
print(dog1)
print(dog2)
七.get和set
通过提供一个公有的方法访问私有属性或者方法,这样的话我们可以按照条件来进行访问权限的控制
class QQread:
def __reader(self):
print("SVIP会员阅读中")
def get_buyyip(self,money)
if money > 20:
self.__reader()
else:
print("对不起请充值会员")
qq = QQread()
qq.get_buyvip(10)
本文主要讲述,面向对象的基础
主要理解内容为类的理解以及代码的执行顺序的理解
后面会有面向对象的升级和深入,敬请期待!!
青山不改,绿水长流.感谢阅读,我的宝子!!!

你可能感兴趣的:(面向对象基础)