Java面试-面向对象的特征及描述
1.继承
继承是从已知类中获得继承信息并创建对象的过程,提供继承信息的类叫父类(超类、基类),创建的新类叫子类(派生类)。继承为变化中的系统提供了一定的扩展性,同时继承是封装程序中可变因素的重要手段。
2.封装
封装一般是对数据和操作数据的封装,只能通过提供的方法对数据进行操作。在面对对象的本质就是将现实世界描述成一个完全自治、封闭的对象,编写类中的方法就是对现实细节的封装,编写类就是对数据和数据操作的封装。也就是说,封装就是隐藏一切可以隐藏的东西,对外只提供简单的编程接口。
3.多态
多态是指允许不同的子类对象对同一消息作出不同的响应,简而言之就是同样的对象调用同样的方法但是做了不同的事情。多态分为运行时多态和编译时多态,方法的重载实现了编译时的多态,方法的重写实现了运行时的多态。运行时的多态是面对对象的精髓,要实现多态需要做的两件事:1.方法的重写(子类继承父类并重写父类已有方法或抽象方法),2.对象造型(用父类引用引用子类对象,这样同样的引用调用相同的方法会根据子类的不同表现出不同的行为)
4.抽象
对同一类对象属性进行总结构造类的过程,包括数据抽象和行为抽象,抽象只关注对象有哪些行为和属性,并不关心这些行为的细节是什么。