面向对象和面向过程的区别
面向过程
优点:性能比面向对象高
缺点:没有面向对象易维护、易复用、易扩展。
面向对象
优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态的特性,可以设计出低耦合的 系统,使系统更加灵活,更易于维护。
缺点:由于类在创建时需要实例化,性能比面向过程低。
面向对象的三大基本特征
封装:把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的对象进行封装隐藏。封装分为属性的封装和方法的封装。
继承:子类继承父类的特征和行为,使得子类对象具有父类的实例域和方法。
多态:父类的引用指向子类型的对象(同一操作作用于不同的对象,可以产生不同的效果)
抽象:就是把现实生活中的某一类东西提取出来,用程序代码表示,这一类东西通常叫做类或者接口。抽象包含两个方面:一个是数据抽象,一个是过程抽象。数据抽象就是对象的属性,过程抽象是对象的行为特征。
什么是类和对象
类:类是从现实世界中具有共同特征的事物抽象而成的模板,用来描述一类对象的行为和状态(描述某一类事物的共性)。例如:动物这一个类,那鸡,鸭,猫,狗都属于动物这个类中的具体对象。
对象:对象是类的一个具体实例,具有状态和行为。