类与实例
来源:互联网 发布:一人一首网络成名曲 编辑:程序博客网 时间:2024/05/16 10:27
class AssrBookEntry(object): #类定义 'address book entry class' def __init__(self,nm,ph): #定义构造器 self.name=nm #设置name self.phone=ph #设置phone print("created instance for:",self.name) def updatePhone(self,newph): #定义方法 self.phone=newph print("Updated phone # for:",self.name)john = AssrBookEntry("John Doe","408-555-1212") #为John Doe 创建实例jane = AssrBookEntry("Jane Doe","650-555-1212") #为Jane Doe 创建实例print("john.name:",john.name)print("john.phone",john.phone)print("jane.name",jane.name)print("jane.phone",jane.phone)john.updatePhone("400-100-1111")print("john.phone:",john.phone)created instance for: John Doecreated instance for: Jane Doejohn.name: John Doejohn.phone 408-555-1212jane.name Jane Doejane.phone 650-555-1212Updated phone # for: John Doejohn.phone: 400-100-1111Process finished with exit code 0在AssrBookEntry类的定义中,定义了两个方法:__init__()和updatePhone()。__init__()在实例化时被调用。传给AssrBookEntry()的参数完全与__init__()接收到的参数是一样的。在上面的__init__()中,需要的参数是nm和ph,他们分别表示名字和电话号码。__init__()在实例化时,设置这两个属性,以便在实例从实例化调用中返回时,这两个属性对程序员是可见的。updatePhone()方法的目的是替换地址本条目的电话号码属性。john = AssrBookEntry("John Doe","408-555-1212") #为John Doe 创建实例jane = AssrBookEntry("Jane Doe","650-555-1212") #为Jane Doe 创建实例这就是实例化调用,他会自动调用__init__(),self把实例对象自动传入__init__()print("john.name:",john.name)print("john.phone",john.phone)print("jane.name",jane.name)print("jane.phone",jane.phone)一旦实例被创建后,就可以证实一下,在实例化过程中,我们的实例属性是否确实被__init__()设置了。john.updatePhone("400-100-1111")print("john.phone:",john.phone)
updatePhone()方法需要一个参数:新的电话号码,在updatePhone()之后,立即检查实例属性,可以证实已生效。
阅读全文
0 0
- 类与实例
- 【C#】类与实例
- java类与实例
- python 类与实例
- #2 类与实例
- 类与实例
- Squirrel中的类与实例
- 实例对象与类变量
- 继承与派生类实例
- JavaScript 中的"类"与"实例"
- 实例变量与类变量
- php实例-对象与类
- 类属性与实例属性
- 类变量与实例变量
- 类方法与实例方法
- 类方法与实例方法
- InetAddress类概述与实例
- URLConnection类概述与实例
- 关于arcgis api for js 聚合效果的进阶
- Shader 基础使用(一)
- 数据结构实验之二叉树四:还原二叉树
- opencv3.2 findContours debuge模式下触发断点问题
- Ubuntu设置ss代理(firefox及终端设置)
- 类与实例
- #LightOJ 1422 Halloween奇怪的区间dp
- TP5.0中使用JSSDK(来源网络只作为个人笔记)
- 前端js小练习,动态生成乘法表
- 5-3 奥运排行榜 (25分)
- linux 下tmp目录文件怎么被删除的?
- Python学习笔记(一)-- 基础语法
- intellij idea下使用Maven搭建SpringMVC
- java编程思想笔记-并发之后台线程