Java常考面试题整理(三)】的更多相关文章

明天又要去面试,Good luck to me.,让我在这段时间换个新的工作吧. 41.在Java中,对象什么时候可以被垃圾回收? 参考答案: 当对象对当前使用这个对象的应用程序变得不可触及的时候,这个对象就可以被回收了. 42.JVM的永久代中会发生垃圾回收么? 参考答案: 垃圾回收不会发生在永久代,如果永久代满了或者是超过了临界值,会触发完全垃圾回收(Full GC).如果你仔细查看垃圾收集器的输出信息,就会发现永久代也是被回收的.这就是为什么正确的永久代大小对避免Full GC是非常重要的…
有关所有Swing相关的面试题,都可以说是凑数的,感觉自己在敲这些的时候感觉一点用处都没有,可以从第72条开始看. 61.说出三种支持重绘(painting)的组件. 参考答案: Canvas,Frame,Panel,和Applet支持重绘. 62.什么事裁剪(clipping)? 参考答案: 限制在一个给定的区域或者形状的绘图操作叫做裁剪. 63Menuitem和CheckboxMenuItem的区别是什么? 参考答案: CheckboxMenuItem类继承自MenuItem类.支持菜单选项…
101.HTTP相应的结构是怎么样的? 参考答案: HTTP相应由三个部分组成: 1.状态码(status code):描述了相应的状态,可以用来检查是否成功的完成了请求.请求失败的情况下,状态码可以用来找出失败的原因.如果Servlet没有返回状态码,默认会返回成功的状态码HttpServletResponse.SC_OK. 2.HTTP头部(HTTP Header):它们包含了更多关于响应的信息.比如:头部可以指定认为响应过期的过期日期,或者是指定用来给用户安全的传输实体内容的编码格式. 3…
81.RMI中的远程接口(Remote Interface)扮演了什么样的角色? 参考答案: 远程接口用来标识哪些方法是可以被非本地虚拟机调用的接口.远程对象必须要直接或者是间接实现远程接口.实现了远程接口的类应该声明被实现的远程接口,给每一个远程对象定义构造函数,给所有远程接口的方法提供实现. 82.java.rmi.Naming类扮演了什么样的角色? 参考答案: java.rmi.Naming类用来存储和获取在远程对象注册表里面的远程对象的引用.Naming类的每一个方法接受一个URL格式的…
1.什么是java虚拟机?为什么java被称作是"平台无关的编程语言". 参考答案: java虚拟级是一个可以执行java字节码的虚拟机进程,java源文件被编译成能被java虚拟机执行的字节码文件. java被设计成允许应用程序可以运行在任意的平台而不需要程序员为每一个平台单独重写或者是重新编译,java虚拟机让这个变成可能,因为它知道底层硬件平台的指令长度和其他特性. 2.jdk和jre的区别是什么? 参考答案: java运行环境(JRE),它包括Java虚拟机,Java核心类库和…
21.Iterator和ListIterator的区别是什么? 参考答案: 下面列出了他们的区别: Iterator可以用来遍历Set和List集合,但是ListIterator只能用来遍历List. Iterator对集合只能向前遍历,ListIterator既可以向前也可以向后. ListIterator实现了Iterator接口,并包含其他的功能,比如增加元素,替换元素,获得前一个和后一个元素的所有,等等. 22.快速失败(fail-fast)和安全失败(fail-fast)的区别是什么?…
Java常考面试题 1. 什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? 答:Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行的字节码文件.虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的.Java虚拟机有自己完善的硬体架构,如 处理器.堆栈 .寄存器等,还具有相应的指令系统. Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译.Java虚拟机让…
序言 说说今天遇到的一件小事吧,在遇到问题,查找答案时,看到很多人的博客里面都有提到关键字眼,可让人觉得可恨的是,大多数人写的博文中,基本上都是照着书上的语言发表的,看了跟没看一样,没有一点通俗的语言和自己关于该知识点的讲解,也有可能是觉得太简单,不用做解释,但是个人感觉,写博文,在一些自己都需要思考一段时间去理解的东西,应该把自己思考的过程,如何理解的写下来,而不是就把精华的部分复制黏贴上去,个人感觉没什么用,回想一下再写计算机网络教程学习历程的博文中,自己也有类似的情况,应该改正过来,在乎的…
序言 昨天刚开始的”每日5题面试“这类文章,感觉还不错,把一些平常看似懂了的东西,弄清楚了.就像什么是虚拟机?这个问题,看起来知道,但是要说出个所以然来,又懵逼了,经常回过头来看看做过的面试题,试着用自己的话说出来,看会不会,不会的话就继续看看,理解理解. ------WH 一.Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思? 自己解答: 覆盖:又称作重写, 前提条件:继承.   子类将父类中的某个方法,原封不动的抄下来,方法体中就自己写 注意:子类重…
序言 昨天刚开始的"每日5题面试"这类文章,感觉还不错,把一些平常看似懂了的东西,弄清楚了.就像什么是虚拟机?这个问题,看起来知道,但是要说出个所以然来,又懵逼了,经常回过头来看看做过的 面试题,试着用自己的话说出来,看会不会,不会的话就继续看看,理解理解. ------WZY 一.Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思? 自己解答: 覆盖:又称作重写, 前提条件:继承.   子类将父类中的某个方法,原封不动的抄下来,方法体中就自己写…
一.String,StringBuffer, StringBuilder 的区别是什么?String为什么是不可变的? 答:   1.String是字符串常量,StringBuffer和StringBuilder都是字符串变量.后两者的字符内容可变,而前者创建后内容不可变. 2.String不可变是因为在JDK中String类被声明为一个final类. 3.StringBuffer是线程安全的,而StringBuilder是非线程安全的. ps:线程安全会带来额外的系统开销,所以StringBu…
什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行的字节码文件. Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译.Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性. JDK和JRE的区别是什么? Java运行时环境(JRE)是将要执行Java程序的Java虚拟机.它同时也包含了执行applet需要的浏览…
序言 双十一那天去我女朋友那了,11.11到11.13 漏了两天的内容,今天中午刚回来的,赶紧补一下前两天漏下的博文,我相信,坚持下来,会有成长的,等到出去实习那一天,肯定会很有帮助,会感谢现在自己的努力. 对了,因为常常会被别人影响到自己,看到别人努力,自己玩了两天就感觉心里好慌啊,每到这个时候,我就告诉自己:不与他人相比,但求超越自己, 希望有跟同样情况的同学也能这样来安抚自己那颗躁动的心,踏踏实实,按照自己的节奏走下去. ---  WH 一.什么是死锁(deadlock)? 自我解答: 这…
序言 我是一只乱飞乱撞的菜鸟,写的文章目前是以记录自己学习,和方便以后查看,期待日后不久能通过自己的努力,获得一点小小的成功,然后写出我的学习经验总结性文章来. ---WH 一.什么是虚拟机?为什么Java被称作是“平台无关的编程语言”? 自己解答: 虚拟机就是用来编译我们写的java程序,我们的程序 xxx.java 首先编译成xxx.class 这个是字节码文件, 虚拟机通过解析我们的字节码文件,来形成计算机底层所认识的编码,所以我们不需要知道我们写的java程序是否能在计算机上运行,因为虚…
序言 好好努力. ---WH 一.Iterator和ListIterator的区别是什么? 自我解答: Iterator是针对所有collection来使用的,而看名字ListIterator,顾名思义,就是给list集合特有的,增加了其他专有的方法吧. 参考答案: 下面列出了他们的区别: Iterator可用来遍历Set和List集合,但是ListIterator只能用来遍历List. Iterator对集合只能是前向遍历,ListIterator既可以前向也可以后向. ListIterato…
https://blog.csdn.net/linzhiqiang0316/article/details/80473906…
这算是一个系列吧,记录一下在准备秋招期间,所准备的C++面试题,望秋招顺利.所有的面试题均来源于各大论坛,网络. C/C++常考面试题(一) 常用的C++数据结构有哪些? vector,序列式容器,相当于数组,顺序表: list, 双向链表 deque,双端队列,queue,队列,stack,栈,priority_queue,优先级队列 map,set,multimap,multiset hashtable,散列表 图,树等等 什么是虚函数,多继承有什么问题 被virtual关键字修饰的成员函数…
网上看到的面经,说是dynamic_cast的实现,和RTTI的相关,这才发现原来对这个概念这么模糊,所以作了这个总结. C/C++常考面试题(二) RTTI(Runtime Type Information, 运行时类型信息) 它提供了运行时确定对象类型的方法.通过运行时类型信息,程序能够使用基类的指针或引用来检查这些指针或引用所指的对象的实际派生类型. RTTI提供了以下两个非常有用的操作符: typeid操作符,返回指针和引用所指的实际类型 dynamic_cast操作符,将基类类型的指针…
c++面试题 一 用简洁的语言描述 c++ 在 c 语言的基础上开发的一种面向对象编程的语言: 应用广泛: 支持多种编程范式,面向对象编程,泛型编程,和过程化编程:广泛应用于系统开发,引擎开发:支持类,封装,重载等特性. 二 c 和 c++ 的区别 C++ 在 c 的基础上添加类: C主要是面向过程,C + + 主要面向对象: C主要考虑通过一个过程将输入量经过各种运算后得到一个输出, C++ 主要考虑是如何构造一个对象模型,让这个模型契合与之对应的问题域, 这样就可以通过获取对象的状态信息得到…
c++面试题 一 用简洁的语言描述 c++ 在 c 语言的基础上开发的一种面向对象编程的语言: 应用广泛: 支持多种编程范式,面向对象编程,泛型编程,和过程化编程:广泛应用于系统开发,引擎开发:支持类,封装,重载等特性. 二 c 和 c++ 的区别 C++ 在 c 的基础上添加类: C主要是面向过程,C + + 主要面向对象: C主要考虑通过一个过程将输入量经过各种运算后得到一个输出, C++ 主要考虑是如何构造一个对象模型,让这个模型契合与之对应的问题域, 这样就可以通过获取对象的状态信息得到…
变量的类型:数值型:整型(byte,short,int,long).浮点型(float,double)非数值型:布尔类型(boolean),字符型(char),字符串类型(String),其他引用型 面试题1:java中,八大基本数据类型有哪些?数值型:整型(byte,short,int,long).浮点型(float,double)非数值型:布尔类型(boolean),字符型(char) 1.赋值运算符 =变量 变量类型 变量名 = 变量值;常量 final 常量类型 常量名 = 常量值; 变…
1. 简述 private. protected. public. internal 修饰符的访问权限. 答 . private : 私有成员, 在类的内部才可以访问. protected : 保护成员,该类内部和继承类中可以访问. public : 公共成员,完全公开,没有访问限制. internal: 在同一命名空间内可以访问. 2 .列举ASP.NET 页面之间传递值的几种方式. 答. 1.使用QueryString, 如....?id=1; response. Redirect()...…
微服务 面试题 1.您对微服务有何了解? 2.微服务架构有哪些优势? 3.微服务有哪些特点? 4.设计微服务的最佳实践是什么? 5.微服务架构如何运作? 6.微服务架构的优缺点是什么? 7.单片,SOA 和微服务架构有什么区别? 8.在使用微服务架构时,您面临哪些挑战? 9.SOA 和微服务架构之间的主要区别是什么? 10.微服务有什么特点? 11.什么是领域驱动设计? 12.为什么需要域驱动设计(DDD)? 13.什么是无所不在的语言? 14.什么是凝聚力? 15.什么是耦合? 16.什么是…
1.#{}和${}的区别是什么? #{}和${}的区别是什么? 在Mybatis中,有两种占位符 #{}解析传递进来的参数数据 ${}对传递进来的参数原样拼接在SQL中 #{}是预编译处理,${}是字符串替换. 使用#{}可以有效的防止SQL注入,提高系统安全性. 2.当实体类中的属性名和表中的字段名不一样 ,怎么办 ? 当实体类中的属性名和表中的字段名不一样 ,怎么办 ? 第1种: 通过在查询的sql语句中定义字段名的别名,让字段名的别名和实体类的属性名一致 <select id=”selec…
[原文]https://www.toutiao.com/i6592359948632457731/ 1.什么是Servlet? 可以从两个方面去看Servlet: a.API:有一个接口servlet,它是servlet规范中定义的用来处理客户端请求的程序需要实现的顶级接口. b.组件:服务器端用来处理客户端请求的组件,需要在web.xml文件中进行配置. 2.Servlet的生命周期,并说出Servlet和CGI的区别? servlet有良好的生存期的定义,包括加载和实例化.初始化.处理请求以…
1 new/delete 与 malloc/free的区别 运算符是语言自身的特性,有固定的语义,编译器知道意味着什么,由编译器解释语义,生成相应的代码. 库函数是依赖于库的,一定程度上独立于语言的.编译器不关心库函数的作用,只保证编译,调用函数参数和返回值符合语法,生成call函数的代码. 实际中,一些高级点的编译器,都会对库函数进行特别处理. malloc/free是库函数,new/delete是C++运算符.对于非内部数据类型而言,光用malloc/free无法满足动态对象都要求.new/…
一 Java中的值传递和引用传递(非常重要) 首先要明确的是:"对象传递(数组.类.接口)是引用传递,原始类型数据(整型.浮点型.字符型.布尔型)传递是值传递." 那么什么是值传递和应用传递呢? 值传递是指对象被值传递,意味着传递了对象的一个副本,即使副本被改变,也不会影响源对象.(因为值传递的时候,实际上是将实参的值复制一份给形参.) 引用传递是指对象被引用传递,意味着传递的并不是实际的对象,而是对象的引用.因此,外部对引用对象的改变会反映到所有的对象上.(因为引用传递的时候,实际上…
Tomcat的缺省端口是多少,怎么修改 tomcat默认缺省端口是8080 修改方法: 找到Tomcat目录下的conf文件夹 进入conf文件夹里面找到server.xml文件 打开server.xml文件 在server.xml文件里面找到下列信息 <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443&qu…
前21题请看之前的随笔 22.面向对象的特征有哪些方面 计算机软件系统是现实生活中的业务在计算机中的映射,而现实生活中的业务其实就是一个个对象协作的过程.面向对象编程就是按现实业务一样的方式将程序代码按一个个对象进行组织和编写,让计算机系统能够识别和理解用对象方式组织和编写的程序代码,这样就可以把现实生活中的业务对象映射到计算机系统中. 面向对象的编程语言有封装.继承 .抽象.多态等4个主要的特征. 1封装: 封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的“高内聚.低耦…
组件中 data 什么时候可以使用对象? 这道题其实更多考的是 JS 功底: 组件复用时所有组件实例都会共享 data,如果 data 是对象的话,就会造成一个组件修改 data 以后会影响到其他所有组件,所以需要将 data 写成函数,每次用到就调用一次函数获得新的数据: 当我们使用 new Vue() 的方式的时候,无论我们将 data 设置为对象还是函数都是可以的,因为 new Vue() 的方式是生成一个根组件,该组件不会复用,也就不存在共享 data 的情况了:…