收藏本页 | 设为主页 | 贸易商务资源网首页 | 免费注册 | 会员登录 | 忘记密码? | 供应 | 求购 | 公司 | 展会 | 资讯 | 图库 | 新发布 | 新更新 | 物流 | 手机版 | 升级商家通
免费会员

北京千锋互联科技有限公司

JAVA、全栈HTML5+、PHP、python人工智能+全栈、UI、大数据、软件测试、Linux云计算...

更多产品分类
  • 暂无分类
站内搜索
 
 
更多友情链接
商家通 通天下
想拥有精美网站和更多的询盘订单?立即注册升级为商家通会员!生意旺旺!需要帮助欢迎与我们取得联系
您当前的位置:首页 » 新闻中心 » 千锋成都Java面试技巧
新闻分类
新闻中心

千锋成都Java面试技巧

发布时间:2018-03-30 11:33:03       返回列表
 千锋成都Java面试技巧

 

Java的就业前景是没话说的,高薪优待也是必须的,但面试一关着实让好多人头疼,因为走的是技术路线,所以都不大善于言谈,千锋小编今天总结了一些关于Java面试的一些面试题和答案,希望能助力你们的面试。

1、接口和抽象类的区别是什么?

Java提供和支持创建抽象类和接口。它们的实现有共同点,不同点在于:

接口中所有的方法隐含的都是抽象的。而抽象类则可以同时包含抽象和非抽象的方法。

类可以实现很多个接口,但是只能继承一个抽象类,类如果要实现一个接口,它必须要实现接口声明的所有方法。但是,类可以不实现抽象类声明的所有方法,当然,在这种情况下,类也必须得声明成是抽象的。

抽象类可以在不提供接口方法实现的情况下实现接口。Java接口中声明的变量默认都是final的。抽象类可以包含非final的变量。Java接口中的成员函数默认是public的。抽象类的成员函数可以是privateprotected或者是public。接口是**抽象的,不可以被实例化。抽象类也不可以被实例化,但是,如果它包含main方法的话是可以被调用的。

2、创建线程有几种不同的方式?你喜欢哪一种?为什么?

有三种方式可以用来创建线程:继承Thread类;实现Runnable接口;应用程序可以使用Executor框架来创建线程池

实现Runnable接口这种方式更受欢迎,因为这不需要继承Thread类。在应用设计中已经继承了别的对象的情况下,这需要多继承(而Java不支持多继承),只能实现接口。同时,线程池也是非常高效的,很容易实现和使用。

3Java集合类框架的基本接口有哪些?

Java集合类提供了一套设计良好的支持对一组对象进行操作的接口和类。Java集合类里面**基本的接口有:Collection:代表一组对象,每一个对象都是它的子元素。Set:不包含重复元素的CollectionList:有顺序的collection,并且可以包含重复元素。Map:可以把键(key)映射到值(value)的对象,键不能重复。

4HashMapHashtable有什么区别?

HashMapHashtable都实现了Map接口,因此很多特性非常相似。但是,他们有以下不同点:HashMap允许键和值是null,而Hashtable不允许键或者值是nullHashtable是同步的,而HashMap不是。因此,HashMap更适合于单线程环境,而Hashtable适合于多线程环境。HashMap提供了可供应用迭代的键的集合,因此,HashMap是**失败的。另一方面,Hashtable提供了对键的列举(Enumeration)。一般认为Hashtable是一个遗留的类。

5ArrayListlinkedList有什么区别?

ArrayListlinkedList都实现了List接口,他们有以下的不同点:

ArrayList是基于索引的数据接口,它的底层是数组。它可以以O(1)时间复杂度对元素进行随机访问。与此对应,linkedList是以元素列表的形式存储它的数据,每一个元素都和它的前一个和后一个元素链接在一起,在这种情况下,查找某个元素的时间复杂度是O(n)。相对于ArrayListlinkedList的插入,添加,删除操作速度更快,因为当元素被添加到集合任意位置的时候,不需要像数组那样重新计算大小或者是更新索引。linkedListArrayList更占内存,因为linkedList为每一个节点存储了两个引用,一个指向前一个元素,一个指向下一个元素。

Java工程师,你离成功又进了一步,面试加油!

千锋教育:http://www.mobiletrain.org/

千锋成都校区:http://cd.mobiletrain.org/

成都校区地址:成都市武侯区科华北路62号力宝大厦N(北楼)18

培训咨询专线:028-83178771

    QQ  : 1660794050

面授课程:全栈HTML5+培训、全链路设计培训、PHP全栈+服务器集群培训、JavaEE+分布式开发培训、大数据+人工智能培训、 Unity游戏开发培训、Python培训、云计算+Python运维培训、全栈软件测试培训、Android培训、iOS培训

 

 

 

千锋成都Java面试技巧

http://imissyou159.ceoie.com/news/itemid-3951719.shtml,我们主要有JAVA、全栈HTML5+、PHP、python人工智能+全栈、UI、大数据、软件测试、Linux云计算、VR/AR、安卓、IOS ,欢迎与我联系:联系人,李老师,手机:400-186-9990,我将向您提供更多【千锋成都Java面试技巧】详细信息。