python教程:面向对象(三)

2025-10-02 23:52:26

1、多态:

父类A的两个派生类B和C,都去重写方法func。都是调用func,由于他们的类不同也导致他们行为也不同。这就是多态。

class A:


   def func(self):
      print 'is A'
class B(A):
   def func(self):
      print "is B"


class C(A):
   def func(self):
      print "is C"


a = A();
b = B();
c = C();


list = [a,b,c]
for obj in list:
   obj.func();

python教程:面向对象(三)

2、静态成员变量

下面的代码中。name就是我们说的静态成员变量。

class A:


   name = "name is static"
   def func(self):
      print 'is A'
print A.name;

输出结果:

python教程:面向对象(三)

3、静态成员方法:

用@staticmethod装饰的方法为静态成员方法:

class A:


   @staticmethod
   def func():
      print 'is A'
A.func();

python教程:面向对象(三)

4、重载运算符:

可以重载的运算符:

python教程:面向对象(三)

5、重载运算符实例:

class A:


   def __init__(self, value):
       self.value = value;
   def __add__(self, other):
       num = self.value + other.value;
       return A(num);
a = A(1);
b = A(5)
print (a+b).value

python教程:面向对象(三)

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:155
  • 阅读量:118
  • 阅读量:164
  • 阅读量:168
  • 阅读量:143
  • 猜你喜欢