java常见面试题目(二)
部分没有答案可以自行百度。
1、myeclipse与eclipse的区别。
2、说说对maven或者SVN的理解。
3、类的加载过程 (创建对象的过程)
1)子父类里静态属性 赋上默认初始值 如果有显示赋值 赋值
2)父类的静态代码块 子类的静态代码块
3)父类的非静态属性 赋上默认初始值 如果有显示赋值 赋值
4)父类的匿名代码快
5)父类的构造器
6)子类的非静态属性 赋上默认初始值 如果有显示赋值 赋值
7)子类的匿名代码块
8)子类的构造器
4、TCP与UDP的区别。
5、java中的值传递和引用传递本质上是否相同?为什么?
参考答案
相同
因为值传递和引用传递其实都是变量把自身存放的内容复制一份再传给方法的形参,
只不过值传递是基本类型的变量把自身存放的数值复制一份传给方法的形参,
而引用传递是引用类型的变量把自身存放的堆区内存地址值复制一份传给方法的形参。
6、在java中,&&和&有什么分别
参考答案:
&既可以用作位运算,又可以用作逻辑运算。
&&只能用作逻辑运算,具有短路的特点,第一个布尔表达式的结果如果能决定整个逻辑运行的结果,则后面的布尔表达式不再运算
7、在一个类里面,静态方法中不能直接调用非静态方法,但是非静态方法中可以直接调用静态方法,为什么?
参考答案
因为静态方法是属于类的,在类加载的时候已经加载处理好了,可以随时使用类名来调用,而非静态方法是属于对象的,只有创建了对象之后,使用对象才能调用。当我们使用类名去调用静态方法的时候,可能还没有创建这个类的对象,那么非静态方法这时就不能调用,所有在静态方法中不能直接调用非静态方法,反之则可以。
8、final关键字可以修饰什么?分别有什么特点
参考答案
final修饰类,该类不能子类继承
final修饰属性,该属性只能赋值一次
final修饰方法,该方法不能被重写
9、.匿名内部类中有没有构造器?
参考答案
有构造器,只是我们不能编写和调用(因为没名字),它会有一个默认的构造器的。把编译生产的class文件,使用javap命名进行反编译就可以看到这个默认的构造器。
10、抽象类与接口的区别。
11、.为什么Set、List集合可以调用iterator方法,然后使用迭代器进行遍历,而Map集合不能使用迭代器遍历?
参考答案
因为Set、List集合都继承了Collection接口,而Collection接口又继承了Iterable接口,Iterable接口中提供了iterator方法,该方法可以返回一个迭代器,用来遍历集合。Map集合则没有继承该接口。
12、抽象类不能使用new关键字创建对象,那么它的构造器有什么作用?
参考答案
被子类调用
13、枚举是不是类?为什么?
参考答案
枚举是一种特殊的java类。
枚举的class文件,使用javap命令反编译之后,可以看到,它是一个final修饰的类,并且指定了继承了java.lang.Enum父类
14、Exception和Error的区别是什么
参考答案
程序中出现Exception是可以处理的,并且处理后程序还可以继续执行
程序中出现Error,是比较严重的问题,代码中无法处理,程序会终止运行。
15、假设在线程的等待池中,现在有很多线程都阻塞在这里,notifyAll方法可以叫醒等待池中的线程。
问题:调用哪个对象的notifyAll方法?叫醒等待池中的哪些线程?
参考答案
调用锁对象的notifyAll方法,叫醒等待池中所以等待这把锁的线程,等待另外锁的线程,则不叫醒。
16、安装JDK后,需要配置的三个环境变量分别是什么?以及每个环境变量代表的含义是什么?
参考答案:
JAVA_HOME
JDK安装路径
PATH
JDK中bin目录所在路径
CLASSPATH
当前要执行的java类(class文件)所在路径
17、执行一个普通java类(有主函数)时,一般会涉及到哪些类加载器?CLASSPATH和哪一个类加载器有关系?什么关系?
参考答案:
启动类加载器
扩展类加载器
应用类加载器
CLASSPATH和应用类加载器有关系
应用类加载器会通过CLASSPATH中配置的路径,来查找当前需要执行的java代码所存在的class文件
18、类加载器加载了字节码文件之后,会对该文件做字节码校验,请列出几条校验的方面(至少三条)
参考答案:
字节码版本和JVM是否兼容
代码不能破坏系统的完整性
运行时堆栈没有溢出
参数类型是否正确
类型转换是否正确
变量要在使用之前进行初始化
方法调用与对象引用类型间要匹配
19、java程序中,如何给对象申请内存,如何释放不再使用的对象内存?
参考答案:
使用new关键字就可以给要创建的对象申请内存空间。
当一个对象不再被使用(没有引用指向它)时,会被标记为垃圾,再之后的某个时刻,会被垃圾回收器(GC)进行内存的释放
20、java中的标识符指的是什么?
参考答案:
类的名字、方法的名字、变量的名字
java常见面试题目(二)的更多相关文章
- java常见面试题目(一)
在大四实习阶段,秋招的时候,面试了很多家公司,总结常见的java面试题目:(答案可以自己百度) 1.你所用oracle的版本号是多少? 2.tomcat修改8080端口号的配置文件是哪个? 3.myb ...
- java常见面试题目
(面的初级到中级之间的,却有很多高级的问题) 总结一些常见的遇见的面试题(来自各方面收集) 1.开发中Java用了比较多的数据结构有哪些? 2.谈谈你对HashMap的理解,底层原理的基本实现,Has ...
- java常见面试题目(三)
1.jsp的内置对象. JSP中一共预先定义了9个这样的对象,分别为:request.response.session.application.out.pagecontext.config.page. ...
- BAT网络运维常见面试题目总结
BAT常见面试题目总结 Author:Danbo 2015-7-11 TCP/IP详解鸟哥Linux的书网络安全ping的原理make的过程文件有哪些类型各种Linux发行版的区别.有关suid的作用 ...
- java程序员常见面试题目
答:每当程序出现异常之后,如果程序没有进行相应的处理,则程序会出现中断现象.实际上,产生了异常之后,JVM会抛出一个异常类的实例化对象,如果此时使用了try语句捕获的话,则可以进行异常的处理,否则 ...
- 一道JAVA经典面试题目的两种解法
题目要求:String s="-1 2 5 78 129 -65 -23";将字符串进行升序排序后输出. 方法一:使用数组进行排序 思路: 1.获取字符串中的数值: 2.将数组 ...
- 【面试笔试】Java常见面试笔试总结
Java 基础 1.有哪些数据类型 Java定义了8种简单类型:byte.short.int.long.char.float.double和boolean. 2.面向对象的语言特征 封装.继承.多态 ...
- JAVA常见算法题(二十六)
package com.xiaowu.demo; import java.util.Scanner; /** * Java实现将阿拉伯数字转为汉字 * * @author WQ * */ public ...
- JAVA常见算法题(二十五)
/** * Java实现中文数字转换为阿拉伯数字 * * * @author WQ * */ public class Demo26 { public static void main(String[ ...
随机推荐
- 你所不知的spring与mybatis整合方法
内容目录 1.采用MapperScannerConfigurer2.采用接口org.apache.ibatis.session.SqlSession的实现类org.mybatis.spring.Sql ...
- linuxprobe培训第1节课笔记2019年7月5日
报了老刘的RHCE培训,这是老刘上课笔记简略版. 老刘在课上介绍了开源共享精神和大胡子(Richard M. Stallman—GNU创始人).linux发展史(Linus Benedict Torv ...
- 数据预处理之独热编码(One-Hot):为什么要使用one-hot编码?
一.问题由来 最近在做ctr预估的实验时,还没思考过为何数据处理的时候要先进行one-hot编码,于是整理学习如下: 在很多机器学习任务如ctr预估任务中,特征不全是连续值,而有可能是分类值.如下: ...
- 并发编程-concurrent指南-原子操作类-AtomicLong
可以用原子方式更新的 long 值.有关原子变量属性的描述,请参阅 java.util.concurrent.atomic 包规范.AtomicLong 可用在应用程序中(如以原子方式增加的序列号), ...
- 常用的方法论-PARR
- HDU 4461:The Power of Xiangqi(水题)
http://acm.hdu.edu.cn/showproblem.php?pid=4461 题意:每个棋子有一个权值,给出红方的棋子情况,黑方的棋子情况,问谁能赢. 思路:注意“ if a play ...
- python基础认识(一)
这些日子以来,新闻铺天盖地的都是人工智能,那么借着这股潮流,python也随之火起来了,现在的python不仅仅可以进行人工智能领域的开发.还可以进行web.爬虫等领域的运用.因此,我认为作为一个紧跟 ...
- Python C3 算法 手动计算顺序
Python C3 算法 手动计算顺序 手动计算类继承C3算法原则: 以所求类的直接子类的数目分成相应部分 按照从左往右的顺序依次写出继承关系 继承关系第一个第一位,在所有后面关系都是第一个出现的 ...
- 剑指offer第二版-1.赋值运算符函数
面试题1:赋值运算符函数题目要求:为自定义类添加赋值运算符函数,考察一些细节点的书写.
- 数据结构-树以及深度、广度优先遍历(递归和非递归,python实现)
前面我们介绍了队列.堆栈.链表,你亲自动手实践了吗?今天我们来到了树的部分,树在数据结构中是非常重要的一部分,树的应用有很多很多,树的种类也有很多很多,今天我们就先来创建一个普通的树.其他各种各样的树 ...