Phthon十一、面向对象的编程

1.类创建一个新类型,而对象这个类的实例。
2.对象可以使用普通的属于对象的变量存储数据。属于一个对象或类的变量被称为域。
  对象也可以使用属于类的函数来具有功能。称为类的方法。域和方法可以合称为类的属性。
  域有两种类型—属于每个实例/类的对象或属于类本身。它们被称为实例变量和类变量。
  类使用class关键字创建。类的域和方法被列在一个缩进块中。
3.类的方法与普通的函数有一个区别—它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候不为这个参数赋值,Python会提供这个值。这个特别的变量指对象本身,按照惯例它的名称是self。(相当于java中的this,不过必须得写)
4.创建一个简单的类:
class Person:
pass # An empty block

p=Person()
print p
打印结果:<__main__.Person instance at 0xf6fcb18c> 后面是内存地址
Python可以在任何空位存储对象。
5.对象的方法:
  定义方法:def 方法名 (self)
               方法体
  调用方法:对象.方法名()
6.__init()__方法:不用掉用,在创建一个类的新实例的时候,把参数包括在圆括号内,会自动传递给init方法,参数也必须包含self。(相当于java的构造方法)。双下划线。
7.__del__()方法相当于是java的垃圾回收器,系统自己调用或自己也可以调用。
8.如果使用的数据成员名称以双下划线前缀,Python把它作为私有变量。
  这样就有一个惯例,如果某个变量只想在类或对象中使用,就应该以单下划线前缀。这只是一个惯例,并不是Python所要求的(与双下划线前缀不同)。
9.继承:父类被称为基本类或超类 。而子类被称为导出类或子类 。Python不会自动调用基本类的__init()__方法,子类需要自己调用。可以多继承。如果不能在子类中找到对应的方法,开始到基本类中逐个查找
  定义子类(基本类在元组中指明):class 子类名(父类名)

你可能感兴趣的:(编程,python)