【Python学习】Python学习20- 面向对象(3)

发布时间:2024年01月17日

主图==========

目录


文章所属专区 Python学习


前言

本章节主要说明Python的面向对象的处理最后一部分。

类属性与方法

类的私有属性

__private_attrs:由两个下划线开通,声明该属性为私有不能在类的外部被使用或直接访问。在类内部调用时 self.__private_attrs

类的私有方法

__private_method:两个下划线开头,声明该方法为私有方法,不能在类的外部调用。self.__private_methods

实例

class Child(Parent):
    __private__Param = 0 #类私有变量
    def __private__Method(self): 
        #类私有方法
        print "child __private__Method"
    childParam = 100
    def __init__(self):
        print "child __init__"

    def childMethod(self):
        print "child method"

    def parentMethod(self, param):
        print "子类重写父类方法 获取子类参数:",param

c = Child() #实例化子类Child
# c.childMethod() #调用子类方法
# #c.parentMethod() #调用父类方法
# c.setParam(100) #调用父类方法设置参数
# c.getParam() #用父类方法获取参数
# c.parentMethod(1) #调用重写后的父类方法
print c.__private__Param
print c.__private__Method

访问类的私有参数,私有方法会报错
在这里插入图片描述

单下划线、双下划线、头尾双下划线说明:

foo: 定义的是特殊方法,一般是系统定义名字 ,类似 init() 之类的。

_foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *

__foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。

参考

菜鸟教程-Python

给个三连吧 谢谢谢谢谢谢了
在这里插入图片描述

文章来源:https://blog.csdn.net/qq_43238568/article/details/135661086
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。