一、面向对象
面向对象:
需要有意义的面向对象的代码,不是有了类就是面向对象
核心:
类 对象
实例化
方法和函数的区别:
方法:设计层面
函数:程序运形,过程式一种称谓
二、对象和类
对象: 对象是现实世界或者思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起
类: 一类事物的统称,对象是类具体化的产物,也就是实例化
不同的对象有不同特点:比如年龄,姓名
类包含类名,属性和方法。
1.类名 :这类事物的名字,满足大驼峰命名法
2.属性:这个类创建出的对象有什么特征
3.方法:这个类创建出的对象有什么行为
定义一个简单的类和对象。self:哪一个对象调用的方法,self就是哪一个对象的引用,使用 .属性名 利用赋值语句就可以在类的外部
示例:
class Student(): #类
name = ''
age = 0
def do_homework(self):
print('homework')
student1 = Student() #类的实例化student1
student1.do_homework() #student1的方法
student2 = Student()
student2.do_homework()
print(id(student1))
print(id(student2))
三、构造函数
用于初始化类的内容部状态,Python提供的构造函数式 init();也就是当该类被实例化的时候就会执行该函数,那么我们就可以把要先初始化的属性放到这个函数里面。
class Student():
name = ''
age = 0
def __init__(self,name,age):
#构造函数
self.name = name
self.age = age
print('student')
def do_homework(self):
print('homework')
student1 = Student('zhang',38) #实例化
print(student1.name)
print(student1.age)
使用这个类时,可以把参数传入初始化函数__init__,这样可以按照我们自己的需求定义输出
四、str方法
示例:
class Dog():
def __init__(self,name):
self.name = name
def __str__(self):
#必须返回一个字符串
return '这是 %s' %(self.name)
Gofei = Dog('小咪')
print(Gofei)