每天三道面试题
码山行
这个作者很懒,什么都没留下…
展开
-
异常处理
七. Java 异常模块 74.throw 和 throws 的区别? 答:throw是在方法内部使用,throws是在方法声明后面使用; throw抛出的是一个异常实例,一旦运行,就证明抛出了异常,而throws是声明可能出现的异常,即不知道是否会发生; throw是主动的,throws是被动的; throw可以配合使用try{}catch{}块进行捕获,然后方法内部进行处理,throws只能向...原创 2019-11-05 08:22:45 · 118 阅读 · 0 评论 -
java web常见面试题总结
六. Java Web模块 64.JSP 和 servlet 有什么区别? 答:servlet是一种服务器端的java应用程序,由web容器加载和管理,用于生成动态web内容,负责处理客户端请求; jsp是servlet的扩展,本质上还是servlet,每一个jsp都是servlet的一个实例,jsp页面会被web容器编译servlet,在由servlet响应客户请求。 区别:servlet适合动...原创 2019-11-05 08:21:31 · 207 阅读 · 0 评论 -
反射和克隆面试题总结
四. Java 反射模块 57.什么是反射? 答:java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有方法和属性,对于任意一个对象,都能够调用它任意 一个属性和方法,这种动态获取信息和动态调用对象的方法的功能称为java语言的反射机制。 在java中实现反射主要是通过获取到一个类的Class对象进行反向解析,解析出一个类的属性,方法和构造器,然后进行操作。 取得Class类对象的...原创 2019-11-05 08:20:19 · 182 阅读 · 0 评论 -
多线程面试题总结
三. Java 多线程模块 35.并行和并发有什么区别? 答:并行是指在两个或多个事件在同一个时刻发生,并发是指两个或多个事件在同一时间间隔发生; 并行是在不同实体上的多个事件,并发是在同一个实体上的多个事件。 36.线程和进程的区别? 答:根本区别:线程是任务调度和执行的基本单位单位,进程是操作系统资源分配的单位。 开销:每一个进程都拥有独立的代码和数据空间(程序上下文),程序间的切换会有较大的...原创 2019-11-02 08:42:09 · 155 阅读 · 0 评论 -
java面试自答(2)
二. Java 容器模块 18.Java 容器都有哪些? 答:常见的容器: 普通容器:ArrayList,LinkedList,HashMap,HashSet 同步容器:Stack,Vector,Hashtable,Collections.sychroniedxxx 并发容器:ConcurrentHashMap,CopyOnWriteArrayList,CopyOnWriteArraySet,Ar...原创 2019-10-17 23:53:41 · 200 阅读 · 0 评论 -
Java 基础模块自答
一. Java 基础模块 1.JDK 和 JRE 有什么区别? 答:jdk时java开发工具集,其包含编译器javac、运行时环境jre,java试调工具和分析工具如:jconsole, jre时java运行时环境,其包含java虚拟机、java基础类库,所以jre是jdk的一部分 如果只是需要运行java程序只要安装jre便可,如果是开发人员则需要安装jdk 2.== 和 equals 的区别...原创 2019-10-15 10:54:33 · 112 阅读 · 0 评论 -
每天三道面试题2019-09-20
1、什么是java序列化,如何实现java序列化? 序列化是用来处理对象流的机制,所谓的对象流也就是价格对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。 序列化实现:序列化的类需要实现Serializable接口,该接口没有需要实现的方法,implements该接口只是为了标记该对象是可被序列化的,然后使用...原创 2019-09-20 23:49:20 · 93 阅读 · 0 评论 -
每天三道面试题2019-09-19
1、http1.0、http1.1和http2.0的区别 http1.0运行在TCP协议上,http1.1运行在SSL/TLS上,而SSL/TLS运行在TCP上,http2.0运行在SPDY/SSL上,而SPDY/SSL有运行在TCP上。 http1.0是无状态的短连接,每一次请求都需要经过三次握手建立连接后才能进行传输;http1.0支持长连接,避免了每次请求都需要建立连接和销毁的开销,但是服...原创 2019-09-19 23:52:29 · 146 阅读 · 0 评论 -
每天三道面试题2019-09-18
1、使用"“和new String(”")创建String对象的区别 1、使用"“创建的String对象时,jvm会先判断在字符串常量池中是否存在相同值得字符串,如果存在,则返回该字符串在字符串常量池中的地址,否则在常量池中创建字符然后返回地址; 2、使用new String(”")创建字符串时,也会先去字符串常量池中判断有无相同值得字符串,如果没有,则先在常量池中创建一个这样的字符串,然后再在堆...原创 2019-09-18 23:54:30 · 109 阅读 · 0 评论 -
每天三道面试题2019-09-17
1、throw和throws的区别 throw: throw用在方法体内,表示抛出异常,由方法体内的语句进行处理 throw是具体向外抛出异常的动作,所以它抛出的是一个异常的实例,执行了throw语句一定向外抛出了某种异常。 throws: throws用在方法声明后面,表示如果抛出异常,由方法的调用者进行处理 throws表现会出现某些异常的可能性,它主要用于声明抛出异常的类...原创 2019-09-17 23:33:57 · 94 阅读 · 0 评论 -
每天三道面试题2019-09-16
1、error 和 exception 的区别? Error类和Exception类的父类都是Throwable类,区别: Error类一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,方法调用栈溢出等,这类错误导致应用的中断,程序仅靠自己是无法自己恢复和预防的,遇到这种错误,建议让程序终止。 Exception类分为运行时异常和编译时异常,运行时异常如:ArithmaticException...原创 2019-09-16 23:50:01 · 164 阅读 · 0 评论 -
每天三道面试题2019-09-14
1、说说springmvc的执行流程 客户端发起请求request 前端控制器DispatcherServlet接收到request,请求处理器映射器HandlerMapping查找Handler HandlerMapping根据url查找到对应的Handler,返回一个执行链给DispatcherServlet DispatcherServlet拿到执行链后请求处理器适配器HandlerAda...原创 2019-09-15 23:01:11 · 111 阅读 · 0 评论 -
每天三道面试题2019-09-14
1、char、varchar和text的区别 char:存储定长数据,必须在括号里定义长度,如char(10),无论你这个字段没有存够10个字符,也会以10个字符的长度进行存储。 定义: varchar:存储变长数据,必须在括号里定义长度,如varchar(255),在没有超过此定义长度时,按照你的数据长度进行存储,如数据长度为5则按5个字符空间大小进行存储,而不是255. text:存储可变长的...原创 2019-09-15 00:10:11 · 118 阅读 · 0 评论 -
每天三道面试题2019-09-13
1、为什么函数不能根据返回类型来区分重载? 因为调用时不能够指定类型信息,编译器不知道你要调用哪个函数,如: float max(float x, float y); int max(int x, int y); 调用max(1, 2);时无法确定调用的是哪一个,但从这一点来说,仅返回值不同的重载是不应该允许的。 若编译器可根据上下文(语境)来判断出含义,比如: int f(); void f(...原创 2019-09-13 21:17:45 · 135 阅读 · 0 评论 -
每天三道面试题2019-09-12
1、是否可以继承 String 不可以,String类是final类,不可以被继承。继承String类本身就是一个错误的行为,对String类型的重用最好的方式是关联关系(has-a)和依赖关系(use-a),而不是继承关系(is-a)。 补充:对一个字符串引用做出频繁赋值修改,只会不断生成新的String对象,因为String是其内部使用的是一个final char[] value进行值的存储,...原创 2019-09-12 23:57:35 · 116 阅读 · 0 评论 -
每天三道面试题2019-09-11
1、面向对象有哪些特性和说说你对它们的理解 封装性,通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。面向对象的本质就是将现实世界描绘成一系列完全自治、封闭的对象。我们在类中编写的方法实现了对细节的封装;我们编写一个类就是对数据和数据操作的封装。封装就是隐藏一切可以隐藏的东西,对外界只提供最简单的编程接口。 继承性,继承是指从已有类得到继承信息创建新的类的过程。提供...原创 2019-09-11 22:32:52 · 115 阅读 · 0 评论