class类笔记整理

 1 # 例:类的概念
 2 class 人类:
 3     名字 = ‘未命名‘ # 成员变量
 4     def 说话(内容): # 成员函数
 5         print 内容            # 成员变量赋初始值
 6
 7 某人 = 人类()        # 定义一个人类对象某人
 8 某人.名字 = "路人甲"
 9 某人.说话    (‘大家好‘)    # 路人甲说话
10 >>> 大家好!            # 输出

Python中定义和使用类的形式为:class 类名[(父类名)]:[成员函数及成员变量],类名为这个类的名称,而父类名为可选,但定义父类名后,子类则拥有父类的相应属性和方法。在用类定义成对象时,会先调用__init__构造函数,以初始化对象的各属性,类的各属性(成员变量)均可以在构造函数中定义,定义时只要加上对象指针就好了。而在对象销毁时,则会调用__del__析构函数,定义类的成员函数时,必须默认一个变量(类似于C++中的this指针)代表类定义的对象本身,这个变量的名称可自行定义,下面例子将使用self变量表示类对象变量。

 1 # 例:类定义及使用
 2 class CAnimal:
 3     name = ‘unname‘ # 成员变量
 4     def __init__(self,voice=‘hello‘):    # 重载构造函数
 5         self.voice = voice            # 创建成员变量并赋初始值
 6     def __del__(self):              # 重载析构函数
 7         pass                # 空操作
 8     def Say(self):
 9         print self.voice
10
11 t = CAnimal()        # 定义动物对象t
12 t.Say()        # t说话
13 >> hello            # 输出
14 dog = CAnimal(‘wow‘)    # 定义动物对象dog
15 dog.Say()            # dog说话
16 >> wow            # 输出

Python编程中类可以承继父类属性,形式为class 类名(父类),子类可以继承父类的所有方法和属性,也可以重载父类的成员函数及属性,须注意的是子类成员函数若重载父类(即名字相同),则会使用子类成员函数

 1 # 例:类的继承
 2 class CAnimal:
 3     def __init__(self,voice=‘hello‘): # voice初始化默认为hello
 4         self.voice = voice
 5     def Say(self):
 6         print self.voice
 7     def Run(self):
 8         pass    # 空操作语句(不做任何操作)
 9
10 class CDog(CAnimal):        # 继承类CAnimal
11     def SetVoice(self,voice): # 子类增加函数SetVoice
12         self.voice = voice
13     def Run(self,voice): # 子类重载函数Run
14         print ‘Running‘
15
16 bobo = CDog()
17 bobo.SetVoice(‘My Name is BoBo!‘)      # 设置child.data为hello
18 bobo.Say()
19 bobo.Run()
20
21 >> My Name is BoBo!
22 >> Running
时间: 2024-10-15 22:17:03

class类笔记整理的相关文章

Deep Learning(深度学习)学习笔记整理系列七

Deep Learning(深度学习)学习笔记整理系列 声明: 1)该Deep Learning的学习系列是整理自网上很大牛和机器学习专家所无私奉献的资料的.具体引用的资料请看参考文献.具体的版本声明也参考原文献. 2)本文仅供学术交流,非商用.所以每一部分具体的参考资料并没有详细对应.如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除. 3)本人才疏学浅,整理总结的时候难免出错,还望各位前辈不吝指正,谢谢. 4)阅读本文需要机器学习.计算机视觉.神经网络等等基础(如果没有也没关系了,没

Deep Learning(深度学习)学习笔记整理系列之(七)

Deep Learning(深度学习)学习笔记整理系列 [email protected] http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04-08 声明: 1)该Deep Learning的学习系列是整理自网上很大牛和机器学习专家所无私奉献的资料的.具体引用的资料请看参考文献.具体的版本声明也参考原文献. 2)本文仅供学术交流,非商用.所以每一部分具体的参考资料并没有详细对应.如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主

Deep Learning(深度学习)学习笔记整理系列之(四)

Deep Learning(深度学习)学习笔记整理系列 [email protected] http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04-08 声明: 1)该Deep Learning的学习系列是整理自网上很大牛和机器学习专家所无私奉献的资料的.具体引用的资料请看参考文献.具体的版本声明也参考原文献. 2)本文仅供学术交流,非商用.所以每一部分具体的参考资料并没有详细对应.如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主

Cocos2dx 学习笔记整理----场景切换

据说Cocos2dx场景切换的方法有32种:cocos2dx 常见的32种切换场景的动画 无需一一求证,只需要知道切换场景需要怎么做就行了. 作为导演CCDirector,切换场景的事情当然归它管了. 切换场景的接口如下: ? 1 CCDirector::sharedDirector()->replaceScene(cocos2d:CCScene * pScene); 所以,我们只要把需要切换的场景实例传进去就可以了. ? 1 2 CCScene * pScene = GameMain::sce

java笔记整理

Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, Ejb, java和模式 Linux/Unix笔记 inode :存储编号(地址) ls -k:查看磁盘分区 ls -li:显示当前文件的inode号. 目录的大小跟文件的大小有关,跟目录里的文件(目录)数量无关. 一行多个命令的话,中间用分号分开.如:pwd;cal;date last | grep

纸质笔记整理(一)

使用File类的listFiles()来遍历指定路径下的所有文件信息. 在tomcat的conf/web.xml中通过<mime-mapping>可查看支持的MIME类型,也可修改. 可在dos中调用netstat -ab来查看对应的端口应用程序. filter:在web.xml中配置,将请求的request.返回的response提前过滤掉一些信息或者设置一些参数,如设置字符编码,权限过滤器等等:而interceptor是在struts的配置文件中配置,与action相关联. 获取绝对路径:

Deep Learning(深度学习)学习笔记整理系列 | @Get社区

body { font-family: Microsoft YaHei UI,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5; } html, body { } h1 { font-size:1.5em; font-weight:bold; } h2 { font-size:1.4em; font-weight:bo

Deep Learning(深度学习)学习笔记整理系列四

Deep Learning(深度学习)学习笔记整理系列 声明: 1)该Deep Learning的学习系列是整理自网上很大牛和机器学习专家所无私奉献的资料的.具体引用的资料请看参考文献.具体的版本声明也参考原文献. 2)本文仅供学术交流,非商用.所以每一部分具体的参考资料并没有详细对应.如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除. 3)本人才疏学浅,整理总结的时候难免出错,还望各位前辈不吝指正,谢谢. 4)阅读本文需要机器学习.计算机视觉.神经网络等等基础(如果没有也没关系了,没

纸质笔记整理(二)

若你的应用需要进行分布式部署,如果你的分布式对象需要支持事务.如果你的关键业务逻辑需要能够支持多种不同类型的客户端,那么EJB将会是一个很好的选择. java虚拟机运行时数据区:                                         需要同时满足下面3个条件才能算是"无用的类": 1,该类的所有实例都已被回收,也就是JAVA堆中不存在该类的任何实例. 2,加载该类的ClassLoader已被回收. 3,该类的java.lang.Class对象没有在任何地方被引