java常见面试题_理论+实践

R_记忆犹新 R_记忆犹新     2022-12-01     311

关键词:

Java面试宝典2010版

. Java基础部分 7

1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 7

2Java有没有goto? 7

3、说说&&&的区别。 8

4、在JAVA中如何跳出当前的多重嵌套循环? 8

5switch语句能否作用在byte上,能否作用在long上,能否作用在String? 9

6short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? 9

7char型变量中能不能存贮一个中文汉字?为什么? 9

8、用最有效率的方法算出2乘以8等於几? 9

9、请设计一个一百亿的计算器 9

10、使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 11

11"=="equals方法究竟有什么区别? 11

12、静态变量和实例变量的区别? 12

13、是否可以从一个static方法内部发出对非static方法的调用? 12

14Integerint的区别 13

15Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 13

16、下面的代码有什么不妥之处? 13

17、请说出作用域publicprivateprotected,以及不写时的区别 13

18OverloadOverride的区别。Overloaded的方法是否可以改变返回值的类型? 14

19、构造器Constructor是否可被override? 15

20、接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承具体类(concrete class)? 抽象类中是否可以有静态的main方法? 15

21、写clone()方法时,通常都有一行代码,是什么? 15

22、面向对象的特征有哪些方面 15

23java中实现多态的机制是什么? 17

24abstract classinterface有什么区别? 17

25abstractmethod是否可同时是static,是否可同时是native,是否可同时是synchronized? 18

26、什么是内部类?Static Nested Class  Inner Class的不同。 19

27、内部类可以引用它的包含类的成员吗?有没有什么限制? 20

28Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 21

29super.getClass()方法调用 21

30String是最基本的数据类型吗? 22

31String s = "Hello";s = s + " world!";这两行代码执行后,原始的String对象中的内容到底变了没有? 22

32、是否可以继承String? 23

33String s = new String("xyz");创建了几个String Object? 二者之间有什么区别? 23

34String StringBuffer的区别 23

35、如何把一段逗号分割的字符串转换成一个数组? 24

36、数组有没有length()这个方法? String有没有length()这个方法? 24

37、下面这条语句一共创建了多少个对象:String s="a"+"b"+"c"+"d"; 24

38try 里有一个return语句,那么紧跟在这个try后的finally 里的code会不会被执行,什么时候被执行,在return前还是后? 25

39、下面的程序代码输出的结果是多少? 25

40final, finally, finalize的区别。 27

41、运行时异常与一般异常有何异同? 27

42errorexception有什么区别? 28

43Java中的异常处理机制的简单原理和应用。 28

44、请写出你最常见到的5runtime exception 28

45JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗? 29

46java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()suspend()方法为何不推荐使用? 29

47sleep()  wait() 有什么区别? 30

48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32

49. 下面两个方法同步吗?(自己发明) 33

50、多线程有几种实现方法?同步有几种实现方法? 33

51、启动一个线程是用run()还是start()? . 33

52、当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法? 33

53、线程的基本概念、线程的基本状态以及状态之间的关系 34

54、简述synchronizedjava.util.concurrent.locks.Lock的异同  34

55、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。 36

56、子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次,请写出程序。 38

57、介绍Collection框架的结构 43

58Collection框架中实现比较要实现什么接口 43

59ArrayListVector的区别 44

60HashMapHashtable的区别 44

61List  Map 区别? 45

62List, Set, Map是否继承自Collection接口? 45

63ListMapSet三个接口,存取元素时,各有什么特点? 45

64、说出ArrayList,Vector, LinkedList的存储性能和特性 46

65、去掉一个Vector集合中重复的元素 46

66Collection  Collections的区别。 47

67Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别? 47

68、你所知道的集合类都有哪些?主要方法? 47

69、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? 48

70TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48

71、说出一些常用的类,包,接口,请各举5 49

72java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类? 49

73、字节流与字符流的区别 50

74、什么是java序列化,如何实现java序列化?或者请解释Serializable接口的作用。 51

75、描述一下JVM加载class文件的原理机制? 52

76heapstack有什么区别。 52

77GC是什么? 为什么要有GC? 52

78、垃圾回收的优点和原理。并考虑2种回收机制。 52

79、垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收? 52

80、什么时候用assert 53

81java中会存在内存泄漏吗,请简单描述。 53

82、能不能自己写个类,也叫java.lang.String 57

83. Java代码查错 57

. 算法与编程 61

1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61

2、编写一个程序,将d:\\java目录下的所有.java文件复制到d:\\jad目录下,并将原来文件的扩展名从.java改为.jad 62

3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABCDEF”,6,应该输出“我ABC”,而不是“我ABC+汉的半个”。 65

4、有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数。 65

5、说明生活中遇到的二叉树,用java实现二叉树 66

6、从类似如下的文本文件中读取出所有的姓名,并打印出重复的姓名和重复的次数,并按重复次数排序: 71

7、写一个Singleton出来。 75

8、递归算法题1 77

9、递归算法题2 78

10、排序都有哪几种方法?请列举。用JAVA实现一个快速排序。 79

11、有数组a[n],用java代码将数组元素顺序颠倒 80

12.金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)输出。 81

. html&JavaScript&ajax部分 82

1. 判断第二个日期比第一个日期大 82

2. table显示n条记录,每3行换一次颜色,即123用红色字体,456用绿色字体,789用红颜色字体。 83

3HTML  form 提交之前如何验证数值文本框的内容全部为数字? 否则的话提示用户并终止提交? 84

4、请写出用于校验HTML文本框中输入的内容全部为数字的javascript代码 84

5、说说你用过那些ajax技术和框架,说说它们的区别 85

. Java web部分 85

1Tomcat的优化经验 85

2HTTP请求的GETPOST方式的区别 85

3、解释一下什么是servlet; 85

4、说一说Servlet的生命周期? 86

5Servlet的基本架构 86

6SERVLET APIforward() redirect()的区别? 86

7、什么情况下调用doGet()doPost() 86

8Request对象的主要方法: 87

9forward redirect的区别 87

10request.getAttribute()  request.getParameter() 有何区别? 88

11. jsp有哪些内置对象?作用分别是什么? 分别有什么方法? 88

12. jsp有哪些动作?作用分别是什么? 88

13JSP的常用指令 89

14. JSP中动态INCLUDE与静态INCLUDE的区别? 89

15、两种跳转方式分别是什么?有什么区别? 89

16、页面间对象传递的方法 89

17JSPServlet有哪些相同点和不同点,他们之间的联系是什么? 90

18MVC的各个部分都有那些技术来实现?如何实现? 90

19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90

20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供reset 91

. 数据库部分 91

1、用两种方式根据部门号从高到低,工资从低到高列出每个员工的信息。 91

2、列出各个部门中工资高于本部门的平均工资的员工数和部门号,并按部门号排序 91

3、存储过程与触发器必须讲,经常被面试到? 92

4、数据库三范式是什么? 94

5、说出一些数据库优化方面的经验? 95

6unionunion all有什么不同? 96

7.分页语句 97

8.用一条SQL语句 查询出每门课都大于80分的学生姓名 100

9.所有部门之间的比赛组合 100

10.每个月份的发生额都比101科目多的科目 101

11.统计每年每月的信息 102

12.显示文章标题,发帖人、最后回复时间 103

13.删除除了id号不同,其他都相同的学生冗余信息 104

14.航空网的几个航班查询题: 104

15.查出比经理薪水还高的员工信息: 105

16、求出小于45岁的各个老师所带的大于12岁的学生人数 106

17.求出发帖最多的人: 107

18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107

19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他用户。 108

20. xxx公司的分布式常见面试题整理

一、分布式理论:1.什么是CAP理论?2.什么是BASE理论?3.什么是2PC?4.什么是3PC?5.什么是ZAB协议?6.什么是Raft协议?7.什么是Paxos算法?二、Zookeeper:8.ZooKeeper是什么?9.Zookeeper怎么保证主从节点的数据同步&#x... 查看详情

面试题mysql常见面试题合集(代码片段)

...f01;🎯往期文章:【面试题】计算机网络篇-10道常见面试题p1【面试题】JVM篇-10道常见面试题p1【面试题】Java并发篇-10道常见面试题p1【面试题】Java基础篇-常见面试题总结p1【面试题】Java基础篇-常见面试题总结p2参考文章... 查看详情

面试题redis篇-常见面试题p1(代码片段)

【面试题】Redis篇-常见面试题p1备战实习,会定期的总结常考的面试题,大家一起加油!🎯🎯🎯往期文章:【面试题】计算机网络篇-10道常见面试题p1【面试题】JVM篇-10道常见面试题p1【面试题】Java并... 查看详情

面试题redis篇-常见面试题p1(代码片段)

【面试题】Redis篇-常见面试题p1备战实习,会定期的总结常考的面试题,大家一起加油!🎯🎯🎯往期文章:【面试题】计算机网络篇-10道常见面试题p1【面试题】JVM篇-10道常见面试题p1【面试题】Java并... 查看详情

java并发常见面试题总结(下)(代码片段)

Java并发常见面试题总结--下线程池为什么要用线程池?实现Runnable接口和Callable接口的区别执行execute()方法和submit()方法的区别是什么呢?如何创建线程池ThreadPoolExecutor类分析`ThreadPoolExecutor`构造函数重要参数分析`... 查看详情

java基础常见面试题总结(上)(代码片段)

Java基础常见面试题总结--上基础概念与常识Java语言有哪些特点?JVMvsJDKvsJREJVMJDK和JRE什么是字节码?采用字节码的好处是什么?为什么不全部使用AOT呢?为什么说Java语言“编译与解释并存”?OracleJDKvsOpenJDKJava和C++的区... 查看详情

java并发常见面试题总结(中)(代码片段)

Java并发常见面试题总结---中JMM(JavaMemoryModel)volatile关键字如何保证变量的可见性?如何禁止指令重排序?volatile可以保证原子性么?synchronized关键字说一说自己对于synchronized关键字的了解如何使用synchronized关键字?... 查看详情

java后端常见面试题总结

...子在准备面试相关的事情,现在把之前搜集整理的后端常见面试题整理成博客,分享给大家,有什么建议欢迎评论或私信。本博客仅供参考!这个整理只做查漏补缺之用,因为面试中常见的问题也是实际工作中可能会遇到的问题... 查看详情

java常见面试题汇总

面临金九银十的黄金跳槽季,不光是很多在职人员跃跃欲试,也有很多大学生积极地加入到应聘行列。作为技术出身的我们,找工作的一大前提就是技术是否能过关。而对于java程序员来说,至少是两关的面试,这首个关卡就是... 查看详情

java基础-常见面试题

动态代理基于什么原理?谈谈java反射机制。代理模式是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个真实对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类... 查看详情

java常见面试题非常实用个人经验(代码片段)

1、左下角windows图标  2、点击设置 3、点击应用  4、点击左边菜单栏的启动按钮 5、然后你就可以在下面出现的开机自动启动的软件中,自由选择开或者关闭了。  查看详情

java常见面试题汇总

不知不觉中,已经将面试题更新到第六篇了,庞大的java面试题库,想要刷完似乎不大可能,需要一点一点的积累。1、java中会存在内存泄漏吗,请简单描述。 答:会;存在无用但可达的对象,这些对象不能被GC回收,导致耗... 查看详情

java常见面试题汇总

上一次更新的java面试题,很多小伙伴反应很简单,其实上一期更新的就是更偏基础的面试题,但这并不意味着,面试就这么简单,在java的学习中,有从Java基础、框架、设计模式等等都是重点学习的点。在本文的面试题分享中,... 查看详情

java并发常见面试题总结(上)(代码片段)

Java并发常见面试题总结--上什么是线程和进程?何为进程?何为线程?请简要描述线程与进程的关系,区别及优缺点?图解进程和线程的关系程序计数器为什么是私有的?虚拟机栈和本地方法栈为什么是私有的?一句话简单了解堆和... 查看详情

java集合面试题看这篇就够了(代码片段)

...f01;🎯往期文章:【面试题】计算机网络篇-10道常见面试题p1【面试题】JVM篇-10道常见面试题p1【面试题】Java并发篇-10道常见面试题p1【面试题】Java基础篇-常见面试题总结p1【面试题】Java基础篇-常见面试题总结p2【面试题... 查看详情

java常见面试题汇总

本期的java面试题是偏向数据库方面的,对相关技术知识匮乏的,或者对这方面不大自信的同学,面试之前可以参考一下这套题,这只是节选,试运营一下,如果不能满足你们的需求,可以直接评论留言! 1、视图的优缺点答... 查看详情

java常见面试题

1. Java中sleep和wait的区别①这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用b的sleep方法,实际上还是a去睡觉,要让b... 查看详情

mysql常见面试题-2(代码片段)

LIKE声明中的%和_是什么意思?%对应于0个或更多字符_只是LIKE语句中的一个字符。如何在Unix和MySQL时间戳之间进行转换?UNIX_TIMESTAMP是从MySQL时间戳转换为Unix时间戳的命令FROM_UNIXTIME是从Unix时间戳转换为MySQL时间... 查看详情