共计 1454 个字符,预计需要花费 4 分钟才能阅读完成。
两大编程思维
类型 | 面向过程 | 面向对象 |
---|---|---|
区别 | 事物比较简单,可用线性思维解决 | 事物比较复杂,简略的线性思维无奈解决 |
共同点 | 面向对象和面向过程都是解决理论问题的一种思维形式 | |
总结 | 两者相辅相成,并不是对抗的。 解决简单问题,通过面向对象形式便于咱们从宏观上把握事物之间的简单关系、不便咱们剖析整个零碎;具体到宏观操作,依然应用面向过程的形式来解决。 |
类与对象
类
类的定义
多个相似事物组成的群体的统称。
可能帮忙咱们疾速了解和判断事物的性质。
数据类型
不同的数据类型属于不同的类。
类的创立
创立语法
- 类名:由一个或多个单词组成,每个单词首字母大写,其余小写。
class 类名:
属性
办法
类的组成
- 类属性
- 实例办法
- 静态方法
- 类办法
代码示例:
class Student:
native_place = '北京' # 类属性
def __init__(self, name, age): # name,age 为实例属性
self.name = name
self.age = age
# 实例办法
def info(self):
print('我的名字是', self.name, ',年龄是', self.age)
# 类办法
@classmethod
def cm(cls):
print('类办法')
# 静态方法
@staticmethod
def sm():
print('静态方法')
对象
100、66、555 都是 int 类蕴含的不同个例,这些个例的专业术语称为实例或对象。
Python 中所有皆对象
对象的创立
对象的创立又称为类的实例化。
语法:实例名 = 类名()
stu = Student('allin', 20)
print(stu.name) # allin
stu.info() # 我的名字是 allin,年龄是 20
Student.cm() # 类办法
Student.sm() # 静态方法
Student.info(stu) # 我的名字是 allin,年龄是 20
有了实例,能力调用类中的内容。
调用类中的办法:对象. 办法名 ()
; 类名. 办法名(对象实例)
。
类属性
类中办法外的变量称为类属性,被该类的所有对象共享。
stu1 = Student('Alun', 20)
stu2 = Student('Bill', 24)
print(stu1.native_place) # 北京
print(stu2.native_place) # 北京
Student.native_place = '天津'
print(stu1.native_place) # 天津
print(stu2.native_place) # 天津
类办法
应用 @classmethod
润饰的办法,应用类名间接拜访的办法。
静态方法
应用 @staticmethod
润饰的办法,应用类名间接拜访的办法。
动静绑定对象的属性和办法
Python 是动静语言,创建对象实例后,能够动静地绑定属性和办法。
def show():
print('我是一个函数')
stu1 = Student('Alun', 20)
stu1.gender = '男' # 动静绑定属性
stu2 = Student('Bill', 24)
print(stu1.name, stu1.age, stu1.gender) # Alun 20 男
stu1.show = show # 动静绑定办法
stu1.show() # 我是一个函数
stu2.show() # AttributeError: 'Student' object has no attribute 'show'
def 代码块
:在类的外部为办法,在类的内部为函数。
一个类能够创立无数个实例对象,实例对象的属性值能够不同。
为一个对象实例动静绑定的属性和办法不会影响类及其他的实例,只作用于本身。
正文完