黑马程序员技术交流社区

标题: 【成都校区】Java面试题基础(带答案) [打印本页]

作者: meikoYang    时间: 2019-1-14 21:54
标题: 【成都校区】Java面试题基础(带答案)
本帖最后由 meikoYang 于 2019-1-14 21:56 编辑

今天要谈的主题是关于求职,求职是在每个技术人员的生涯中都要经历多次。对于我们大部分人而言,在进入自己心仪的公司之前少不了准备工作,有一份全面细致面试题将帮助我们减少许多麻烦。大部分的公司面试的时候,问题都是比较基础的,但是也许我们却记不住。下面是一些比较基础的面试题!

1.面向对象的三个特征

封装,继承,多态,这个应该是人人皆知,有时候也会加上抽象。

2.多态的好处

可替换性:多态对已存在代码具有可替换性

可扩充性:增加新的子类不影响已经存在的类结构

接口性:多态是超类通过方法签名,向子类提供一个公共接口,由子类来完善或者重写它来实现的。

灵活性

简化性

3.代码中如何实现多态

实现多态主要有以下三种方式:
1. 接口实现
2. 继承父类重写方法
3. 同一类中进行方法重载

4.接口的意义

接口的意义用三个词就可以概括:规范,扩展,回调。

5.什么是不可变对象

不可变对象指对象一旦被创建,状态就不能再改变。任何修改都会创建一个新的对象,如 String、Integer及其它包装类。

6.java 创建对象的几种方式

采用new ,通过反射 ,采用clone ,通过序列化机制

7.java中==和eqauls()的区别

==是运算符,用于比较两个变量是否相等,而equals是Object类的方法,用于比较两个对象是否相等。默认Object类的equals方法是比较两个对象的地址,此时和==的结果一样。换句话说:基本类型比较用==,比较的是他们的值。默认下,对象用==比较时,比较的是内存地址,如果需要比较对象内容,需要重写equal方法。

8.a=a+b与a+=b有什么区别吗?

+=操作符会进行隐式自动类型转换,此处a+=b隐式的将加操作的结果类型强制转换为持有结果的类型,而a=a+b则不会自动进行类型转换。

9.ArrayList和Array有什么区别?

1.Array可以容纳基本类型和对象,而ArrayList只能容纳对象。、

2.Array是指定大小的,而ArrayList大小是固定的










欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2