热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python实例的成员方法地址_python类内部成员的访问及外部访问(入门)

classStudent():schoolxcxy#类属性__majorcomputer#类私有属性def__init__(self,name,age):#构造方法self

class Student():

school = "xcxy" # 类属性

__major = "computer" # 类私有属性

def __init__(self ,name, age): # 构造方法

self.name = name # 实例属性

self.__age = age # 实例私有属性

def match(self, score): # 实例方法

print(self.school) # 访问类属性 self.类属性名

print(Student.school) # 访问类属性 类名.类属性名

print(self.__major) # 访问类私有属性 self.类私有属性名

print(Student.__major) # 访问类私有属性 类名.类私有属性名

print(self.name) # 访问实例属性 self.实例属性名

print(self.__age) # 访问实例私有属性 self.实例私有属性名

def __fly(self,nnn): # 私有方法 外部访问只能是 对象._类名__私有方法名

print(nnn) # 其他和实例方法相同

@classmethod

def eat(cls,num): # 类方法

print(cls.school) # cls.类属性

print(Student.school) # 类名.类属性

print(cls.__major) # cls.类私有属性

print(Student.__major) # 类名.类私有属性

@staticmethod

def run(numm):

print(Student.school) # 类名.类属性

print(Student.__major) # 类名._ _私有类属性

stu = Student("hjh",24) # 实例化对象

类属性 类私有属性

以下称为外部

对类属性访问

print(stu.school) # 对象.类属性名 xcxy

print(Student.school) # 类名.类属性名 xcxy

对类属性修改

stu.school = "qhdx" # 对象. 类属性名 = "qhdx"

print(stu.school)

Student.school = "bjdx" # 类名. 类属性名 = "bjdx"

print(Student.school)

对类私有属性的访问

print(stu._Student__major) # 对象._类名__私有属性名 computer

print(Student._Student__major) # 类名._类名__私有属性名 computer

对类私有属性的修改

stu._Student__major = "jixie" # 对象._类名__私有属性名 = "jixie"

print(stu._Student__major)

Student._Student__major = "dianqi" # 类名._类名__私有属性名 = "dianqi"

print(Student._Student__major)

对实例属性访问

print(stu.name) # 对象.实例属性名

对实例属性修改

stu.name = "hsf" # 对象.实例属性名 = "hsf"

print(stu.name)

对实例私有属性访问

print(stu._Student__age) # 对象.实例属性名

对实例私有属性修改

stu._Student__age = 20 # 对象._类名__实例属性名 = "hsf"

print(stu._Student__age)

外部调用实例方法

stu.match(300) # 对象.方法名(参数列表) 不能使用 类名.实例方法名 的方式调用

外部调用私有方法

stu._Student__fly(500)

调用类方法

Student.eat(200) # 类名.类方法名([实参列表])

stu.eat(200) # 对象.类方法名([实参列表])

调用静态方法

Student.run(800) # 类名.静态方法名([实参列表])

stu.run(800) # 对象.静态方法名([实参列表])



推荐阅读
  • Web动态服务器Python基本实现
    Web动态服务器Python基本实现 ... [详细]
  • JUnit下的测试和suite
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • OBS Studio自动化实践:利用脚本批量生成录制场景
    本文探讨了如何利用OBS Studio进行高效录屏,并通过脚本实现场景的自动生成。适合对自动化办公感兴趣的读者。 ... [详细]
  • 问题场景用Java进行web开发过程当中,当遇到很多很多个字段的实体时,最苦恼的莫过于编辑字段的查看和修改界面,发现2个页面存在很多重复信息,能不能写一遍?有没有轮子用都不如自己造。解决方式笔者根据自 ... [详细]
  • 本文介绍了一种方法,通过使用Python的ctypes库来调用C++代码。具体实例为实现一个简单的加法器,并详细说明了从编写C++代码到编译及最终在Python中调用的全过程。 ... [详细]
  • 本文介绍如何使用JavaScript中的for循环来创建一个九九乘法表,适合初学者学习循环结构的应用。 ... [详细]
  • linux网络子系统分析(二)—— 协议栈分层框架的建立
    目录一、综述二、INET的初始化2.1INET接口注册2.2抽象实体的建立2.3代码细节分析2.3.1socket参数三、其他协议3.1PF_PACKET3.2P ... [详细]
  • 本文详细介绍了Elasticsearch中的分页查询机制,包括基本的分页查询流程、'from-size'浅分页与'scroll'深分页的区别及应用场景,以及两者在性能上的对比。 ... [详细]
  • Python正则表达式(Python RegEx)
    Python正则表达式快速参考常用函数:re.match():从字符串的起始位置匹配一个正则表达式。re.search():扫描整个字符串并返回第一个成功的匹配。re.s ... [详细]
  • 处理Android EditText中数字输入与parseInt方法
    本文探讨了如何在Android应用中从EditText组件安全地获取并解析用户输入的数字,特别是用于设置端口号的情况。通过示例代码和异常处理策略,展示了有效的方法来避免因非法输入导致的应用崩溃。 ... [详细]
  • 函子(Functor)是函数式编程中的一个重要概念,它不仅是一个特殊的容器,还提供了一种优雅的方式来处理值和函数。本文将详细介绍函子的基本概念及其在函数式编程中的应用,包括如何通过函子控制副作用、处理异常以及进行异步操作。 ... [详细]
  • 本文介绍了多维缩放(MDS)技术,这是一种将高维数据映射到低维空间的方法,通过保持原始数据间的关系,以便于可视化和分析。文章详细描述了MDS的原理和实现过程,并提供了Python代码示例。 ... [详细]
  • 本文详细介绍了如何在Spring框架中设置事件发布器、定义事件监听器及响应事件的具体步骤。通过实现ApplicationEventPublisherAware接口来创建事件发布器,利用ApplicationEvent类定义自定义事件,并通过ApplicationListener接口来处理这些事件。 ... [详细]
  • Redis 是一个高性能的开源键值存储系统,支持多种数据结构。本文将详细介绍 Redis 中的六种底层数据结构及其在对象系统中的应用,包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象。通过12张图解,帮助读者全面理解 Redis 的数据结构和对象系统。 ... [详细]
  • 编程技巧:括号匹配与计算问题解析
    本文详细介绍了括号匹配和计算问题的实现方法,包括代码示例和解释,旨在帮助开发者更好地理解和应用这些技术。 ... [详细]
author-avatar
RealMadrid
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有