Hi, I am new to Python language.
I have only 10 days experience on it.
When I start learning there is no difficult, but it make me slow down when
I reach "Object Oriented Concept", especially "Inherited".
Some of my background knowledge about "Inherited is the child class can get
all of characteristic and behaviour of parent class, in other words - data
and methods of parent".
Ok, I am going to show the concept that make me confuse with two programs.
Both of them are getting the same result, so why people are making
different.
-----------------------------------Frist----------------------------------------------------------
class Parent():

    parentdata = 0

    def __init__(self):

        pass

    def getParentData(self):

        return Parent.parentdata

    def setParentData(self, setdata):

        Parent.parentdata = setdata



class Child(Parent):

    childdata = 0

    def __init__(self):

        pass
    def getChildData(self):

        return Child.childdata

    def setChildData(self, setdata):

        Child.childdata = setdata


child = Child()

print "Default Child's Data is :" + str(child.getChildData())#getting 0

child.setChildData(3)

print "After Adding Child's Data is :"+ str(child.getChildData()) # getting
3

print "Default Parent's Data is:"+ str(child.getParentData())# getting 0

child.setParentData(1)

print "After Adding Parent's Data is :"+str(child.getParentData())# getting
1



-----------------------------Second-------------------------------------------------------------
class Parent():

    parentdata = 0

    def __init__(self):

        pass

    def getParentData(self):

        return Parent.parentdata

    def setParentData(self, setdata):

        Parent.parentdata = setdata

class Child(Parent):

    childdata = 0

    def __init__(self):

        #super(Child, self).__init__()

        #super(Child, self).__init__(self, self)

        Parent.__init__(self)

    def getChildData(self):

        return Child.childdata

    def setChildData(self, setdata):

        Child.childdata = setdata


child = Child()

print "Default Child's Data is :" + str(child.getChildData())#getting 0

child.setChildData(3)

print "After Adding Child's Data is :"+ str(child.getChildData()) # getting
3

print "Default Parent's Data is:"+ str(child.getParentData())# getting 0

child.setParentData(1)

print "After Adding Parent's Data is :"+str(child.getParentData())# getting
1


-----------------------------------------------------------------------------------------------
And also guide me, how to use "Super()" method for instance of
"Parent.__init__(self)
Somebody used, Super method ih there and some are doing as my way.
I am not clearly these two different.
In these two program - I am not using "__init__" as constructor.
If I am going to use "__init__" as to add data into the class's
data(childdata, parentdata), how do I insert parameter in
"Parent.__init__(self)" and both of their
"def __init__(self):" method.
Thanks
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to