[转载] python类内部成员的访问及外部访问(入门)
参考链接: 在Python中更改类成员
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) # 对象.静态方法名([实参列表])
[转载] python类内部成员的访问及外部访问(入门)相关推荐
- python类的成员没有访问控制限制_Python 访问限制 private public的详细介绍
一.知识点 在一个模块中,我们可能会定义很多函数和变量.但有的函数和变量我们希望能给别人使用,有的函数和变量我们希望仅仅在模块内部使用,so? 我们可以通过定义该函数.变量是公开的还是私有的来达到该目 ...
- python类中成员的的调用
python类中成员的调用 python类中的方法到底到底是方法还是函数取绝于调用者, 当类名调用这个方法时他是一个函数 class Foo(object):def f1(self):print(&q ...
- Python类的成员
类的成员 类的内置成员 code:_10class_buildin_member.py # ****************************************************** ...
- python类的成员函数_Python实现动态添加类的属性或成员函数的解决方法
某些时候我们需要让类动态的添加属性或方法,比如我们在做插件时就可以采用这种方法.用一个配置文件指定需要加载的模块,可以根据业务扩展任意加入需要的模块. 本文就此简述了Python实现动态添加类的属性或 ...
- [转载] Python类属性、类方法和静态方法
参考链接: Python中的类和实例属性 Python类属性.类方法和静态方法 在Python中,一切皆对象.通过类创建出来的对象是实例对象,类本身也是对象,称为类对象. 一.类属性 对象都有属性,我 ...
- C++57个入门知识点_40 常成员函数(用于定义不可修改类内部成员变量的函数,一般用来修饰Get函数;常成员函数this指针:const T* const;常成员函数内部变量修改方法:强转/关键字)
前面我们已经学习了C++中重要的知识点,特别是虚函数可能会有些懵逼,但是需要我们在实践中不断的理解和尝试,写代码是进步最快的方式,接下来将会介绍一些简单但很重要的知识点,本篇介绍常成员函数. 总结: ...
- C++编程进阶4(C++中的强制类型转换运算符、不要返回自定义类内部成员的指针,引用和迭代器)
十五.C++中的强制类型转换 C语言中的强制类型转换方式有两种 T i = (T)exp; T i = T(exp); 这两种方式没有差别,C++中也支持这两种方式,但是和C++中的强制类型转换运算符 ...
- python类的成员函数_注入一个python类成员函数
你在这里要做的是Child2.foo用self不是a的方法调用未绑定的方法Child2. 这是非法的,Python 2将检测到并提出一个TypeError解释错误的地方:TypeError: unbo ...
- python类内部方法调用_python如何调用类中的方法
调用同一个类中的方法 首先类中的方法在定义的时候需要先加参数self,例如:def SaveData(self,ip): print(ip)如果无self参数则不能在同一个类中调用(之前一直在这里犯错 ...
最新文章
- Spring MVC中数据绑定流程和原理
- linux 安装swoole
- c语言字符数组与字符串的使用详解
- Machine Learning笔记(三) 多变量线性回归
- PDF怎么在线合并为一个文件
- html音乐播放器怎么有黑边框,播放不能满屏有黑边怎么办,怎么剪切视频黑边,剪切黑边...
- ssm水电费管理系统java
- 查看php是否支持sg11,云虚拟主机支持SG11扩展
- 数学建模——使用matlab神经网络工具箱训练和预测
- 2020年IT技术的发展趋势!
- 修改Win10右键菜单
- 视网膜屏幕和高清视网膜屏幕
- 【图文并茂】一文讲透Dubbo负载均衡之最小活跃数算法
- 如何利用STM32和迪文串口屏以及WIFI模组进行数据交互
- Xiaojie雷达之路---DPM External Functions详解
- 什么是商业智能 (BI) 仪表板?
- CSS 中的 background 背景属性命令大全
- 9 年小厂老前端的年终总结(90 后,12 年毕业,工作 9 年,发过传单,做过运营)
- leaflet 在移动端地图显示不清晰的解决方法
- ubuntu的cuda10和cuda11共存
热门文章
- 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(上海),签到题G	Fibonacci
- 【超链接】多媒体工具网站
- java 包装类缺点_Java 自动拆箱和自动装箱学习笔记
- 2020-09-02 微机原理与接口课程复习题
- 2018 Multi-University Training Contest 1
- 杭州哪里学python好_杭州哪里学python好
- dns提供商主机名_DNS域名解析的过程
- 2019蓝桥杯C++B组 年号字串;完全二叉树的权值
- bzoj 2351: [BeiJing2011]Matrix(二维Hash)
- 块状树(bzoj 3720: Gty的妹子树)