自学python----面向对象

1 面向对象的理解

面向过程:根据业务逻辑从上到下写代码
面向对象:对函数进行分类和封装,让开发“更快更好更强…

举例:
张三吃饭
面向过程
1 张三感觉饿了
2 想到哪里去吃
3 等待下班时间
4 排队。。。
5 选菜
6.。
7.。
8.。。

面向对象
张三.吃饭()
既然面向对象可以 让开发“更快更好更强… ,怎么去做,才可以实现
步骤如下:

#掌握一门面向的编程语言
	面向对象语言  python java  js   php   go

#要理解面向对象,必须先要理解 类和对象?
	类: 指的是类型
	对象: 指的是该类型下的具体哪一个

类和对象的关系
 类是对象的抽象,对象是类的具体
 类一个  对象多个
类的定义:具有相同属性和行为的一组对象的集合

举例:
张三是人类
李四是人类

对象: 张三  李四
类:  人类

#按照python定义类的语法 ,去定义类
	  语法 
		class 类名(父类):
			#定义属性
			属性的名=值
			
			#定义行为(方法)
			def 方法名(self,参数):
				#方法体
				
		  #定义人类
		  class people():
			#定义属性
			name="tom"
			age =22
	
			#定义行为
			def eat(self):
				print(people.name,"在吃饭。。")
		
# 创建对象
	#语法:
		  #对象名= 类名()
		  zhangshan=people()
	  
# 通过对象去调用行为
	   zhangshan.eat()

2 静态属性和实例属性区别

 静态属性和实例属性
 静态属性属于类,实例属性属于对象
 class people():
	 #定义属性(静态属性)
	 name="李四"

    #构造方法__init__
    def __init__(self):
        self.age = 0  # 实例属性(对象)

    #定义行为
    def eat(self):
        print(people.name,self.age)

    def run(self):
        print(people.name,"在跑步。。")

#创建对象
zhangshan = people()

#通过对象调用属性
people.name="张三"
zhangshan.age=22
##通过对象调用行为
zhangshan.eat()
#创建对象
lishi = people()
lishi.age=32
##通过对象调用行为
lishi.eat()

3.init 方法

构造方法,通过类创建对象时,自动触发执行 ,是个特殊方法
创建对象时,给属性赋值
  class people():

    #self当前对象

    #构造方法__init__
    #过类创建对象时,自动触发执行
    #创建对象时,给属性赋值
    def __init__(self,name,age):
        self.age = age  # 实例属性(对象)
        self.name=name

    def showinfo(self):
        print("名字:",self.name)
        print("年龄:",self.age)

#创建对象
zhangshan = people("张三",22)
zhangshan.showinfo()
print("-------------")
lishi = people("李四",32)
lishi.showinfo()

4.self当前对象

  class People():

    def __init__(self,name,age):
        self.name=name
        self.age=age

        def show(self):
        print(self.name,self.age)

	
p1 = People('张三',22)
p1.show()
 
p2 = People('张三2',12)
p2.show()
 
#当程序执行p1 = People('张三',22) self 就是 p1  
#当程序执行p2 = People('张三2',12)self 就是 p2
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值