python面向对象编程(初级)

面向对象基本概念

  • 函数式编程,使用函数去实现功能的编程方式
  • 面向对象式编程,把功能封装在类的方法中,通过实例化对象去调用这些功能的编程方式
  • 面向对象的步骤
    • 定义类
      • 类名称首字母大写&驼峰式命名
      • 类都继承object
      • 类里定义的函数叫做方法
      • 每个方法的第一个参数是sel
    • 实例化类
  • 面向对象的理解
    • 和面向对象相反的概念是面向过程式编程,就是按照流程一步一步写出来把实现的过程展现给使用者,而面向对象则是把过程给封装起来,不对外公布细节,只提供调用方法,让代码更加的简洁优雅
    • 类,类本质就是几个有共同功能的函数的集合,用动物来类比的话,人就是一个类别,猫是另外一个类,不仅如此,汽车,卡车都可以是一个类,分类的角度不同,类也就不同,编程的类也是如此。比如说开发一个游戏时武器可以为一个类,它们有共同的属性(名字,尺寸,功能等)。玩家也可以是一个类,我们把这些对象封装到类里通过实例化进行调用
    • 对象,上例中武器这个类,我们把它拿出来用(改变尺寸,功能,使用者等)的时候,这个武器就是一个对象,而我们使用它的过程在编程中就被称为实例化对象,只要经过这个步骤后才能引用类里面的方法
  • 实例分析
class Car:
	def __init__(self):
		pass
	def color(self):
		c = black
		print(c) 
	def models(self):
		c = van
		print(c)
c = Car()
c.color()
    1. __init__为python的初始化方法在实例化类的时候会自动执行
    1. c = Car()为实例化对象,此时的c就是一个对象,相当于在内存中创建了一辆车
    1. c.color()是获取这辆车的颜色

这就是面向对象创建一个类还有初始化类的过程,通过类封装数据和方法,再通过实例化对象去访问这些数据和方法

补充:

  • self,本质上就是一个参数。这个参数是Python内部会提供,其实本质上就是调用当前方法的那个对象。
  • 对象,基于类实例化出来”一块内存“,默认里面没有数据;经过类的 __init__方法,可以在内存中初始化一些数据。

相关术语:

  • 实例变量,属于对象,只能通过对象调用的变量,一般定义在初始化函数里。在定义类时,地址会给初始化方法分配一片地址空间,如果有默认数据的话则把默认数据放到这块空间,下例中会把”10“加载到这片空间,当实例化对象的时候,会把实例化时候传进来的参数也放进这片空间,也就是"tom","15"也放进了这片空间
class T
 def __init__(self, n1, n2):
        # 实例变量
        self.other = "10"
        self.name = n1
        self.age = n2
  def text(self):
  		print("text")
t = T("tom","15")
  • 绑定方法,类里面不带任何装饰器的函数,简称方法。
  • 执行绑定方法,通过实例化的对象.方法执行方法
t.txet()

总结
使用class定义类,
class的需要传递的参数写在_init_ 中,self代表创建的这个对象本身,
self.变量名代表引用这个类的变量,这样写的目的是在类的其它地方也能通过self调用到这个变量
要调用类中的方法或者数据,得先实例化对象
class 中的方法默认第一个参数都是self

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值