学习笔记

面向对象编程(OOP)

是一种编程方式,这种编程方式需要使用“对象”来实现。

对象的特征

1.世间万物皆对象
某个具体领域也是由对象组成的,列如:
在学校领域,对象包括学生、教师、课程、教师、成绩单等;在银行领域,对象包括银行账户、出纳员、支票、现金等。

2.每个对象都是唯一的
对象的唯一性来自于真实世界中事物的唯一性。

3.对象具有属性和行为
对象的行为包括具有的功能及具体的实现。

4.对象具有状态
状态是指某个瞬间对象的各个属性的取值。

5.对象分为类对象和实例对象两大类
类对象是指具有相同属性和行为的实例对象的抽象。
类对象就是实例对象的模板,实例对象是由类对象创建出来的。
此外,同一个类对象的所有实例对象如果具有相同的属性,表明它们的属性的含义是相同的。

面向对象编程的大体步骤

1.抽象出类对象
2.抽象出类对象的属性
3.抽象出类对象的行为(方法)
4.根据类对象创建实例对象
5.通过实例对象访问属性和方法

抽象:

class Cat(object):
		pass

定义类对象的语法格式:

class 类名(object):
	#属性与方法

其中,
1.类名由一个或多个单词组合而成,每个单词的首字母大写且其余字母全部小写,列如:SomeClass。
2.(object)表示该类对象继承自python内置的类对象object,python中所有的类对象都继承自一个统一的基类:object。

初识类的方法:

猫具有的行为:
1.跑
2.喵喵叫
3.吃东西

# 跑
def run(self):
	print("Cat is running")
# 喵喵叫
def miao(self):
	print("Cat is miaoing")
# 吃
def eat(self):
	print("Cat is eating")

行为(方法)是类中特殊的函数。

初识属性:

猫类具有的属性:
1.品种
2.昵称
3.年龄
4.健康状况等

class Cat(object):
	def

类的方法与函数的区别:
方法就是定义在类对象中的函数。方法与函数的区别在于:
1.定义方法时,方法的第一个形参表示调用该方法的实例对象,第一个形参的名称通常是self,也可以是其它名称。
2.调用方法时,系统自动将调用该方法的实例对象作为实参传递给第一个形参。第一个实参会传递给第二个形参,第二个实参会传递给第三个形参,依次类推。
根据类对象创建实例对象的语法格式为:
类名([实参])

#根据类对象创建实例对象
cat = Cat("波斯猫", "喵喵", 1, "很好")
print(cat.bread)
print(cat.name)
print(cat.age)
print(cat.health)

cat.run()
cat.miao()
cat.eat()

实例属性

实例属性指的是实例对象所绑定的属性。

绑定实例属性(给实例对象绑定属性)的方式有两种:
1.在类对象的内部(方法中)
语法格式:self.属性名 = 属性值
推荐在特殊方法_init_中进行绑定,这样,在创建实例对象后就会自动调用特殊方法_init_对实例对象进行初始化,从而绑定实例属性。如果在其它方法中进行绑定,可能需要手动调用方法后才会绑定。
2.在类对象的外部
python是动态语言,所以,在实例对象创建之后,可以对其动态地绑定属性。
语法格式:实例对象.属性名 = 属性值
如果制定名称的实例属性已经存在,则是对实例属性进行修改。

访问实例属性的方法有两种:
1.在类对象的内部(方法中)
语法格式:self.属性名
2.在类对象的外部
语法格式:实例对象.属性名
之所以添加前缀"self"或"实例对象",是为了表明实例属性被哪个实例对象所绑定

class MyClass(object):
	def_init_(self):
		#在类对象的内部(方法中)绑定的实例属性
		self.ia1 = 18
		
	def do_sth1(self):
		#在类对象的内部(方法中)访问实例属性
		print(self.ia1)
		
	def do_sth2(self):
		print(self.ia2)
		
	def do_another(self):
			#在类对象的内部(方法中)绑定实例属性
			self.ia2 = 56
			
	def do_sth3(self):
			print(self.ia3)
mc = MyClass()
mc.do_sth1()

18
mc.do_sth2()
mc.do_another()
mc.do_sth2()

56
print(mc.ia2)

56

/

#在类对象的外部绑定实例属性
mc.ia3 = 66
print(mc.ia3)

66
mc.do_sth3()

66

实例对象._ dict _
可获得该实例对象所绑定的所有属性及其值的字典

mc._ _dict_ _

{'ia1' : 18, 'ia2' : 56, 'ia3' : 66}

类对象属性

类属性指的是类对象所绑定的属性。
绑定类属性(给类对象绑定属性)的方式有两种:
1.在类对象的内部(方法外)
语法格式: 属性名 = 属性值
2.在类对象的外部
python是动态语言,所以,在类对象创建之后,可以对其动态地绑定属性。
语法格式: 类对象.属性名 = 属性值
如果指定名称的类属性已经存在,则是对类属性进行修改。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值