鱼C论坛

 找回密码
 立即注册
查看: 3323|回复: 12

类与对象的疑惑

[复制链接]
发表于 2014-8-20 10:05:22 | 显示全部楼层
一开始学编程,都是一行一行指令的敲打,敲多了会发现很多语句都会重复,所以就有了函数,所以说函数是对语句的封装,调用函数相当于一次性执行多条语句完成特定的功能(Function)。继续敲代码,敲的更多了会发现函数传参很麻烦,尤其是牵涉数据结构(比如一个人有身高、体重、肤色,可以用一个数据结构来表示)时,传参特别麻烦(比如定义函数printPersonInfo(height, weight, color),函数的参数很长,而且传递比较麻烦),后来就有了类。类把数据(属性)和方法(函数)封装成了一个整体,比如我定义一个Person类:
class Person:
    height = 1.8
    weight = 60
    color = 'Yellow'

    def printInfo(self):
        print('height:', self.height)
        print('weight:', self.weight)
        print('color:', self.color)


这样的话,以后我实例化一个Person类的对象,p = Person(),使用p.printInfo()就能够完成上述所说的printPersonInfo(height, weight, color)函数的功能了。另外p对象里面拥有height、weight、color属性,也拥有printInfo()方法,这跟现实世界是不是很像,我们人有身高、体重、肤色还有说话、跑动等方法。上帝造出了人类,然后实例化了一个夏娃,之后其他人都跟夏娃一个样,有两只手、两只腿、有嘴、有鼻子。面向对象编程的灵感正是来自自然界,使用类来封装属性和方法,然后实例化对象,再对不同的对象来设置属性,这样不同的对象就能表现出不同的特征。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-7 03:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表