python入门基础知识(十):类和对象

1. 什么是面向对象

目前的软件开发领域有两种主流的开发方法,分别是结构化开发方法和面向对象开发方法。早期的编程语言如C、Basic、Pascal等都是结构化编程语言,随着软件开发技术的逐渐发展,人们发现面向对象可以提供更好的可重用性、可扩展性和可维护性,于是催生了许多的面向对象的编程语言,如C++、Java、Python、C#和Ruby等。面向对象程序设计即OOP,是Object-Oriented Programming的缩写。面向对象编程技术起源于20世纪60年代的Simula语言,其自身理论已经十分完善,并被多种面向对象程序设计语言(Object-Oriented ProgrammingLangunianling,OOPL)实现。由于很多原因,国内大部分程序设计人员并没有很深的OOP以及OOPL理论,很多人从一开始学习到工作很多年都只是接触到C/C++、Java等静态类型语言,而对纯粹的OOP思想以及动态类型语言知之甚少。对象的产生通常基于两种基本方式,分别是以原型对象为基础产生新对象和以类为基础产生新对象。

2. 类

在面向对象的编程语言中,使用类来定义和表示具有相同属性或功能的模型。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 对象

对象属性引用的方法和Python中其他属性引用的方法一样,都是使用“obj.name”格式。在创建对象后,类命名空间中所有的命名都是有效属性名。
在这里插入图片描述

4. 类方法

要想用类来解决实际问题,还需要定义一个包含属性和方法的类,因为这才符合现实世界中的事物特征。

(1)定义并使用类方法

在Python程序中,可以使用关键字def在类的内部定义一个方法。在类中定义方法后,当在类的外部调用该类的这个方法时可以完成对应的功能。定义类方法的方式与函数的定义方式相似,但是有如下3点区别。

● 方法的第一个参数必须是self,而且不能省略。
● 方法的调用需要实例化类,并以“实例名.方法名(参数列表)”
的形式进行调用。
● 必须整体进行一个单位的缩进,表示这个方法属于类体中的内容。

在这里插入图片描述

(2)构造方法

在定义类时可以定义一个特殊的方法,即构造方法 init()。注意,在init的前后分别是两个下画线“_”。构造方法用于类实例化时初始化相关数据,如果在这个方法中有相关参数,则实例化时就必须提供。

在Python语言中,很多类都倾向于将对象创建为有初始状态的形式,所以会在很多类中看到定义一个名为__init__()的构造方法,例如下面的演示代码。
在这里插入图片描述
在Python程序中,如果在类Myclass中定义了 init()方法,那么类的实例化操作会自动调用__init__()方法。所以接下来可以这样创建一个新的实例:

当然,构造方法__init__()可以包含参数,参数通过构造方法__init__()传递到类的实例化操作上。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三十二画生H

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值