面向对象编程

  • 面向对象编程
  • 面向对象面向过程区别
  • 概念及术语

面向对象编程

面向对象编程:Object Oriented Programming,简称OOP,是一种程序设计方法。

面向对象面向过程区别

完成自我介绍功能,面向过程完成功能

stu_a ={				
        "name":"python"				
        "age":20,				
        "hometown":"天津"
       }
stu_b ={				
        "name":"Java"				
        "age":19,				
        "hometown":"北京"
       }
stu_c ={				
        "name":"C语言"				
        "age":20,				
        "hometown":"河北"
       }
def stu_info(stu):
	   #自我介绍	
	   for key,value in stu.items():
	   print("key=%s,value=%d"%(key,value))
stu_info(stu_a)
stu_info(stu_b)
stu_info(stu_c)
接下来我们用面向对象的思想来完成功能
stu_a =Student(个人信息)
stu_b =Student(个人信息)
stu_c =Student(个人信息)
stu_a.info()
stu_b.info()
stu_c.info()
文件读写
f =open(path,'r')
f.read()
f.close()

面向过程:根据业务逻辑从上到下写代码,要面面俱到都要思考到
面向对象:将数据与函数绑定到一起,进行封装。减少重复代码的重写过程,找一个能完成这个功能的队友来完成。
面向对象和面向过程都是解决问题的一种思路而已。

概念及术语

  • 类(Class):用来描述具有相同属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。其中的对象被称作类的实例。
  • 实例:也称对象。通过类定义的初始化方法,赋予具体的值,成为一个"有血有肉的实体"。
  • 实例化:创建类的实例的过程或操作。
  • 实例变量:定义在实例中的变量,只作用于当前实例
  • 类变量:类变量是所有实例公有的变量。类变量定义在类中,但在方法体之外。
  • 数据成员:类变量、实例变量、方法、类方法、静态方法和属性等的统称。
  • 方法:类中定义的函数。
  • 静态方法:不需要实例化就可以由类执行的方法
  • 类方法:类方法是将类本身作为对象进行操作的方法。
  • 方法重写:如果从父类继承的方法不能满足子类的需求,可以对父类的方法进行改写,这个过程也称override。
  • 封装:将内部实现包裹起来,对外透明,提供api接口进行调用的机制
  • 继承:即一个派生类(derived class)继承父类(base class)的变量和方法。
  • 多态:根据对象类型的不同以不同的方式进行处理。