什么是面向对象:
是一种分析问题的方式,为了增强程序的可扩展性。(是一种思想)
面向对象的特性是什么:
1.封装:
原则:对外开放,对内封闭,对外扩展开放,对内修改封闭,提供一个借口供外部访问。
类和对象本身就是封装的体现;
属性封装了字段;
方法封装了一堆代码;
类封装了方法;
程序集封装了类;
是指把事物的状态和行为封装在类中,使用这个类的人完全不需要知道类的内部是怎么实现的,只需要调用类中的属性或方法,来实现功能。
2.继承:
是类与类的关系,是指某个类中要使用另外一个类中的一些属性或方法时,这个类只需继承那个类,这个类就可以使用那个类中所有的属性和方法了,这个类就称为子类,而被继承的那个类称为父类,继承实现代码复用,继承主要是为了体现多态;
能不能继承私有成员:(存在歧义)
1>子类继承父类,创建子类对象时,私有成员也被分配了内存空间;
2>继承只是面向对象的概念,继承的目的是为了子类使用,实现代码重用,体现多态;
3>即便是继承了但不能访问,所以没有意义;
简单的理解:
1>子类继承父类;
2>拥有父类的属性和方法(构造函数是不能继承的,只能在子类中调用父类中的构造函数);
3>实现代码复用,提高效率;
4>体现多态;
3.多态:
增强程序的可扩展性;
什么是对象:
广义:万事万物都是对象;
狭义:是具体的,是类的具体实例,拥有属性(特征)和方法(行为);
什么是类:
模子,模具,确定对象将会有哪些属性(特征)和方法(行为);
什么是抽象类:
用abstract关键字修饰的类;
抽象类中的抽象成员不能使用private访问修饰符,可以使用其他访问修饰符
抽象类存在的意义:
1>抽象类不能被实例化,只能被其他类继承;
2>继承抽象类的子类必须把抽象类中的所有抽象成员都重写(实现)(除非子类也是抽象类。)
3>抽象类就是为了重写→多态(代码重用)。
4>抽象类中可以有实例成员也可以有抽象成员。
什么是接口:
1> 接口是一种规范,协议,约定遵守某种规范就可以写出通用的代码;
2>接口是定义了一组具有各种功能的方法,只是一种能力,没有具体的实现。也就所谓的光说不做。
接口存在的意义:
1>接口就是为了体现多态,而多态就是为了提高可扩展性,从而提开发高效率,减少成本;
2>解决了多继承问题;
3>解决体积庞大;
4>接口可以多继承;
转载:http://www.cnblogs.com/zlp520/p/3553930.html