什么是类和对象
类和对象,在我们的生活中其实是很容易找例子的。类是一种把对象分组归类的方法。比如动物,植物就可以看作是类,而大象,狮子就可以看作一个动物类中的对象;花,草可以看作是植物类中的对象。
为什么大象和狮子就划分为动物类,花和草就划分为植物类呢?答案就是它们有一些共同的属性特征,根据我们制定的分类方法,就可以将它们进行分类了,分类的准则不同,它们也可以属于不同的类。
在我们的python编程中,也是有类和对象的,比如我们知道的数据类型就可以看做是类,数字类,字符类,列表类,函数类;实际的1,2,3数字就是数字对象了,"abc"等就是字符对象了,这些都是python中提供的对象。除了提供的对象,其实我们也可以自己来创建对象,这里我们就用一个比较好理解的例子来说:假设我们要做一个弹球游戏,这里面有三个不同颜色大小的球和一个球拍。我们就可以创建一个球类 和 一个球拍类。根据球类我们可以创建三个不同的颜色大小的球,根据球拍类可以创建一个指定颜色大小球拍。
这里的球类就相当于一个模子,它可以调整颜色,大小和显示位置,利用它可以生成各种各样的球,球拍类同理。
类和对象在编程中有什么用
之前我们有学习过函数,函数有很多的好处:
1.创建一个新的函数可以让你给一组语句命名,这可以让你的程序更容易阅读和调
试。
2.通过消除重复的代码,函数精简了程序。以后,如果你要做个变动,你只需在一
处修改即可。
3.将一个长程序分解为多个函数,可以让你一次调试一部分,然后再将它们组合为
一个可行的整体。
4.设计良好的函数经常对多个程序都有帮助。一旦你写出并调试好一个函数,你就
可以重复使用它。
函数和类都是组织和管理代码的一种方式,通过使用函数和类,可以让我们的代码结构和逻辑非常清晰。类它的作用比函数更加强大,总结来说主要有下面的一些特点:
1.提高代码的重用性,减少重复工作。
2.结构模块化,可扩展性强。
3.可以将问题简化分解,抽象成一个个类对象,逐一解决。
4.数据封装。
5.继承和多态。
当然还有很多其它好处,但是如果使用的比较少或者了解的比较少,你可能感觉不到它的一个优势,更多的理解体会还需要再往后的学习中慢慢感悟,等到那一天你觉得代码比较多,要处理的对象比较多,更改代码,添加功能比较麻烦时,这个时候你可能就需要用上它了,也就是所谓的面向对象编程和面向过程编程。
如何利用类和对象去编程
前面讲了很多概念性的东西,下面讲讲如果利用类去编程,当然学完后还是需要自己去理解,将其用到自己的实际项目中,这里比较考验你的解决问题能力,如何将实际问题变成程序的问题,和数学中的建模问题很相似,也很有趣。
创建一个类
创建一个Toy玩具类,名字叫做卡通手机,有播放音乐的功能。实例化一个mobile对象,调用它的属性name和方法playmusic()。
添加构造函数
上面的方法name是固定写在Toy类里面的,如果想要实现不同类型的玩具,那么就需要一个构造函数了,这里的init()就是构造函数,里面的第一个参数固定就是self,表示的就是实例化的对象,当我实例化一个对象后,它就会被自动替换成我们的实例对象,比如变成mobile对象,self就是mobile,robot对象时,self就变成robot,它会自动给绑定到对应的对象上面去,这就是self的作用。
self.name表示就是对象的名字,等于传递进来的名字,这样我们就可以创建的时候写自己想要的名字了。写完之后,名字也就自动绑定上去了。
单继承
Toy是一个父类,ToyGun是继承Toy的子类,可以直接继承父类的属性和方法,减少了重复的代码,同时又可以添加自己的属性和方法。
多继承
多继承可以继承两个父类的属性和方法,如果两个父类都有相同的方法时,根据继承的顺序来,左侧优先,比如这里括号里面左侧是Car,所以这里就是Car的方法,播放喇叭声。
总结
类和对象还有很多高级的内容这里并没有讲,感兴趣的可以自己去研究,这里只是一个引入而已,在学习的时候尽量多去思考琢磨,你会越来越感觉到它的妙处。
(全文完)
长按二维码,加关注!叶子陪你玩
欢迎转载,转载请注明出处!
欢迎关注公众微信号:叶子陪你玩编程
分享自己的python学习之路
网友评论