面向对象编程
Posted kangjunhao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象编程相关的知识,希望对你有一定的参考价值。
面向对象
必知:Python中有两种编程方式:
1.函数式编程
2.面向对象编程: 其实就是对类和对象的应用
1.类的创建:
格式:
class 类名: def 方法名():
2.类中方法的调用:
1.定义好一个类后
2.将类赋值给一个自定义的对象
3.利用自定义的对象来调用类中的方法
示例:
class bar: # 定义一个类 def foo(self): # 定义一个方法 print(‘hello world ‘) # 以上就是完成类的创建了 # 下面是对类中方法的调用 obj = bar() # 自定义一个对象,将类名加括号赋值给对象 obj.foo() # 通过‘对象.方法名‘的方式来调用
3.类中默认的__init__方法:
当你执行将类名赋值给对象是,Python内部自动执行的一个函数,所以进行封装时也可以利用这个方法,可以让你的代码看起来更漂亮
方法中的默认self参数:
self参数Python内部在你调用方法的时候,自动传值的参数,其实他代指的是调用方法的对象的名字(也就是上面例子中的obj对象)
4.面向对象的三大特性:
1.封装:
1.就是当你的函数的参数中有许多的共同且不变的参数时,可以直接将值封装在对象中
2.利用类的特性,__init__方法,在方法中封装公用的值
class bar: def __init__(self, name, age): self.name = name self.age = age self.blood = ‘o‘ def show_info(self, hobby): print(self.name, self.age, self.blood, hobby) alex = bar(‘alex‘, 15) alex.show_info(‘jklsjdfljk‘)
2.继承(可以多代继承)
子代可以继承父代类中的方法
示例:
class bar: # 父类(基类) def show_name(self): print(‘hello‘) def show_age(self): print(‘world‘) class car(bar): # 子类(派生类) def show_sex(self): print(‘male‘)
实现不继承父代中的方法:
代码示例:
class bar: def show_name(self): print(‘hello‘) def show_age(self): print(‘world‘) class car(bar): def show_sex(self): print(‘male‘) def show_name(self): # 在子代中定义一个和父代中相同名字的方法,就可以实现,方法重写 print(‘female‘)
3.
以上是关于面向对象编程的主要内容,如果未能解决你的问题,请参考以下文章