@frank-shaw
2015-10-29T10:44:11.000000Z
字数 724
阅读 1738
java.基础知识
java面向对象的几个特征是什么?
封装、继承、多态。
关于封装:Java提供了private、protected和public三个访问控制修饰符来实现良好的封装。
关于继承:Java提供了关键字extends来让子类继承父类,子类继承父类就可以集成到父类的成员变量和方法;如果访问权限足够的话,子类实例可以直接调用父类里定义的方法。
关于多态:
1、构造函数功能?
4、多态怎么表现?
8.申请很多变量,导致栈溢出的情况,怎么解决?
用栈把递归转换成非递归;
使用static对象替代nonstatic局部对象;
增大堆栈大小值;
10.还记得继承和多态的概念吗?都要解释。重载和重写也要解释一下。
11.解释抽象函数。
为什么会出现抽象类?在继承的基础上,当两个类具有相同的函数名称与声明,但是函数体不一样,那么我们可以向上抽取函数的声明,这样抽取的父类就是抽象类(因为只有函数的声明)。抽象函数所在的函数就是抽象类。
狼和狗都具备吼叫功能,那么可以向上提取为犬科,定义一个吼叫功能的抽象函数,因为犬科具体怎么叫我不知道,但是我知道它必须具有这个功能。具体怎么吼叫是交给它的子类去实现的(狼就叫嗷嗷,狗就叫汪汪)。
12.static关键字,注意不仅要解释静态成员变量,还要解释静态成员函数
4、 abstract class和interface有什么区别
两者都是不断向上抽取而来的。
abstract class 可有抽象方法也可以有非抽象方法,但是接口只能由抽象方法;
abstract class 只能够单继承,而接口可以多实现;
但是从设计的角度来看,抽象类和接口有很大的区别。
5、 Java中包含哪些类型的异常,区别是什么?
1、 了解过哪些设计模式?