鱼C论坛

 找回密码
 立即注册
查看: 2171|回复: 5

42课提问

[复制链接]
发表于 2017-3-8 21:58:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1.类和类对象和实例对象究竟是什么关系?该如何理解?
2.class New_int(int):
        def __add__(self,other):
                return self + other
A = New_int(3)
B = NewP_int(4)
A + B会产生无限递归,为什么return self 前加了int, other 前加了int就不会产生无限递归?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-3-8 23:22:33 | 显示全部楼层
本帖最后由 int2str 于 2017-3-8 23:24 编辑

回答第二个问题
A + B会调用A的魔法方法__add__(),因为重新定义__add__(), New_int的“加法”不是一般认知的加法
但是__add__()返回self + other时又调用了self(就是A)的__add__(),就死循环了
加int后,把A,B变成了int类型,int(self) + int(other) 调用整数的加法,也就是一般数学上的3+4
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2017-3-8 23:47:25 | 显示全部楼层
第一个问题: 举个例子 我们人是一种类,我们基本特征都是一样的,而类实例就是将人类转换成转换成现实的人,比如阿明.阿芳就是一个人类的实例化出来的,叫做对象,虽然都是人类.但是名字性别什么都不同
类有着相同的属性,而对象就是类的实例化,有着不同的属性值
第二个问题如二楼所说
不明白处可以继续问
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-3-9 10:05:43 | 显示全部楼层
lumber2388779 发表于 2017-3-8 23:47
第一个问题: 举个例子 我们人是一种类,我们基本特征都是一样的,而类实例就是将人类转换成转换成现实的人,比 ...

首先谢谢您的回答,我在想确认一下。如果把人比喻成一个类,那么类对象就相当于是人里面的阿明.阿芳,类实例就是将人这个类转换成转换成现实的人的过程?是否可以这么理解?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-9 10:27:20 | 显示全部楼层
snakeshe 发表于 2017-3-9 10:05
首先谢谢您的回答,我在想确认一下。如果把人比喻成一个类,那么类对象就相当于是人里面的阿明.阿芳,类 ...

恩 可以这么理解 类实例化后就是对象了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-9 11:23:59 | 显示全部楼层
3楼例子举得很好~现在对类:就是一些东西共有的特征进行一个组合来定义
类实例:就是把这个类具体到具体的一类事物上
类对象: 就是类实例化后得到的具体的某一个事物
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-24 21:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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