Java代码笔试题及答案大全
Java代码笔试题及答案
1、运算符优先级问题,下面代码的结果是多少?
publicclassTest {
publicstaticvoidmain(String[] args){
int k = 0;
int ret = ++k + k++ + ++k + k;
// ret的值为多少
println(ret);
}
}
解答:主要考察++i和i++的区别。++在前则先自增再赋值运算,++在后则先赋值再自增运算。因此,结果为8。
2、在Java中,以下代码( A )正确地创建了一个InputStreamReader对象。
A) InuptStreamReader(new FileInputStream(“1.dat”));
B) InuptStreamReader(new FileReader(“1.dat”));
C) InuptStreamReader(new BufferReader(“1.dat”));
D) InuptStreamReader (“1.dat”);
3、下面代码的结果是什么?
publicclassTest {
publicvoidmyMethod(String str) {
println("string");
}
publicvoidmyMethod(Object obj) {
println("object");
}
publicstaticvoidmain(String[] args) {
Test t = new Test();
t.myMethod(null);
}
mongodb电商使用场景 }
解答:这道题考察重载方法参数具有继承关系时的调用问题,还有对null的认识。如果是一般具有继承关系的对象分别作为参数,看对象的引用,如:
java常见笔试题 classA {
}
classBextendsA {
}
publicclassTest {
publicstaticvoidmain(String[] args) {
A b1 = new B();
B b2 = new B();
get(b1);// A
get(b2);// B
}
publicstaticvoidget(A a) {
System.out.println("A");
}
publicstaticvoidget(B a) {
System.out.println("B");
}
}
这道题中,Object是一切类的父类,具有继承关系,那null是指向什么呢?null是任何引用类型的初始值,String和Object的初始值都是null,但是null会优先匹配引用类型参数为Strin
g的方法,因此这道题答案是string。假设这道题中还有其他同是引用类型的重载方法呢?如:
publicvoidmyMethod(Integer obj){
println("Integer");
}
如果是这样的话,调用这个方法传入参数null时会报错,他不知道选哪个方法进行匹配调用了。
4、假设今天是9月8日,下面代码输出什么?
publicclass Test {
public static void main(String[] args) {
Datedate = newDate();
Month() + " " + Date());
}
}spring up with joy
解答:这道题考察的是日期中获取的月份是从0开始的,因此会比我们日常的月份少1,这个题答案是8 8。
5、下面代码的输出结果是什么?
publicclassTest {
publicstaticvoidmain(String[] args){
double val = 11.5;
und(val));
println(Math.floor(val));
il(val));
}
}
random函数作用 解答:这个是在考Math取整数的三种方法。round()是四舍五入取证,floor()是舍去小数位,ceil()是向上进一位。floor是地板ceil是天花板,一个在下,则舍去,一个在上,则向上进1。那是不是结果应该为12、11、12呢?还要考虑返回值类型,round()返回值类型为long长整型,floor()和ceil()返回值的是double类型,因此正确的答案应该是12、11.0、12.0。
6、编程输出一个目录下的所有目录及文件名称,目录之间用tab。
publicclassTest {
publicstaticvoidmain(String[] args) {
new Test().read("D:/test", "");
}
publicvoidread(String path, String tab) {
File file = new File(path);
File[] childFiles = file.listFiles();
for (int i = 0; childFiles != null i childFiles.length; i++) {
println(tab + childFiles[i].getName());
html语言使用什么来描述 if (childFiles[i].isDirectory()) {
read(childFiles[i].getPath(), tab + "\t");
}
}
实时台湾新闻最新消息 }
}
这个主要是考察IO部分知识点了。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论