Python论坛  - 讨论区

标题:大家帮忙看下下面这个类是不是调用了父类的私有属性

2011年04月19日 星期二 20:53

class book:

__author = ' '

__name =' '

__page =0

price = 0

__press = ' '

def __check(self,item)

     if item == ' ':

        return 0

     else:

        retrurn 1

def show(self):

    if self.__check(self.__author):

        print self.__author

    else:

        print 'No value'

   if self.__check(self.__name):

        print self.__name

   else:

        print 'No value'

def setname(self,name):

   self.name=name

def __init__(self,author,name):

   self.__author = author

   self.__name = name

----------------------------------------------------------

class student(book):

   b=student('jack','big book')

------------------------------------------------------------

接着调用:

b.show()

这样为什么能输出:

jack,big book

感觉好像是调用了book类的__check()私有方法和__author及__name的私有属性,麻烦大家帮忙看看,谢谢了

2011年04月19日 星期二 21:01

因为show()是在父类中定义的。你可以试试直接在student中访问父类的私有属性不就清楚了?

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号