面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同。虽然本质和C#或者JAVA相同但是在写法上还是有一定的差距的
仍以Student类为例,在Python中,定义类是通过class
关键字,后面跟参数。
class Student(object):
pass
一般没有继承话就用object代替,如果Python想用相关的属性,就要用到self关键字,这有点像C#里面的构造函数,只是Python里面不需要声明相关属性
>>> class Student(object):
... def __init__(self,name,age):
... self.name=name
... self.age=age
>>>
>>>a=Student('张三',24)
>>>a.name
张三
>>>a.age
24
同时不仅仅可以带上自己的属性,同时也能写方法
>>> class Dog(object):
... def Eat(self):
... print('i am dog')
>>>a=Dog()
>>>a.Eat()
i am dog
同时也可以返回返回值与函数没有啥区别
>>>class Dog(object):
... def Myname(self):
... return 'my name is dog'
...
>>>b=Dog()
>>>b.Myname()
my name is dog