鱼C论坛

 找回密码
 立即注册
查看: 787|回复: 1

关于类和多态的一个疑问

[复制链接]
发表于 2019-6-13 21:39:11 | 显示全部楼层 |阅读模式

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

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

x
我编写了一个多态联系函数:
class Fish():
        def name(self,name):
                print('我是%s鱼'%name)
        def what(self,name):
                Fish.name(name)
这个函数也可以这样写:
class Fish():
        def name(self,name):
                print('我是%s鱼'%name)
        def what(self,name):
                self.name(name)
最后一行用类名和用self有什么不同??而且为什么使用self时参数里不能再加“self”.
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-6-15 00:20:40 | 显示全部楼层
使用类名会打印类方法中的变量,而使用self会随着声明类的变化而变化,也就是通过self会将类属性实例化。
例如:

  1. class student:

  2.     name = "frank"

  3.     def print_name(self):
  4.         print(student.name)

  5.     def print_name2(self):
  6.         print(self.name)

  7. a = student()
  8. a.name = tony
  9. a.print_name()
  10. a.print_name2()
复制代码


结果为:

  1. frank
  2. tony
复制代码


你可以体会一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-16 09:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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