java基础常见面试题.docVIP

  • 5
  • 0
  • 约3.3万字
  • 约 33页
  • 2020-11-20 发布于河南
  • 举报
谈谈你对面向对象的理解?【面试题】 面向对象是一种程序设计思想,它从人类自然的思维方式出发,认为万物皆对象,世界是由各种具有自己的内部状态和运动规律的对象组成; 因此,人们应当按照现实世界的这个本来面貌来理解世界,通过对象来描绘和反映世界,这样建立起来的系统才更加接近于现实世界。 对象是对现实事件的抽象,它有自己的类别,数据和行为,有唯一的存储空间; 面向对象的精髓在于:通过封装,继承,多态等特性,实现高内聚低耦合的软件,从而最终提高软件的可重用性,可维护性和可扩展性。 (1)封装:封装是指类型的封装,即把数据和行为包装起来形成类,并且使用访问权限修饰符隐藏具体实现,公开外部调用方法。 封装它是模块化的基础,封装时需要注意:谁拥有数据,谁就拥有操作数据的方法; 比如,人要在黑板上画圆,这一操作涉到:人、黑板和圆三个类;因为画圆时用到的圆心和半径是圆的属性,所以,画圆的方法应该封装到圆这个类中,而不应该分配给人。 (2)继承:继承是一种类别之间表述共性的关系模型:一个新的类可以从现有类中派生,从而自动拥有现有类的一些数据和行为; (3)多态:也就是“多种形态”,是指同一个方法,在继承关系的类别中有不同的实现版本,方法的调用会在运行时会根据对象的类型决定。 因此多态也叫运行时绑定、动态绑定、或后期绑定。 (4)抽象:是分析事物、提取共性的过程,这一过程无需考虑细节实现问题。 面向对

文档评论(0)

1亿VIP精品文档

相关文档