36、使用递归算法输出某个目录下所有文件和子目录列表
package com.bjsxt;
import java.io.File;
public class $ {
public static void main(String[] args) {
String path = "D:/301SXT";
test(path);
}
private static void test(String path) {
File f = new File(path);
File[] fs = f.listFiles();
if (fs == null) {
return;
}
for (File file : fs) {
if (file.isFile()) {
System.out.println(file.getPath());
} else {
test(file.getPath());
}
}
}
}
37、关于Java编译,下面哪一个正确()(选择一项)
A、Java程序经编译后产生machine code
B、Java程序经编译后会生产byte code
C、Java程序经编译后会产生DLL
D、以上都不正确
答案:B
分析: Java是解释型语言,编译出来的是字节码; 因此A不正确,
C是C/C++语言编译动态链接库的文件为.DLL; 正确答案为B
38、下列说法正确的有()(选择一项)
A、class中的construtor不可省略
B、construtor与class同名,但方法不能与class同名
C、construtor在一个对象被new时执行
D、一个class只能定义一个construtor
答案:C
分析:
- A:如果class中的construtor省略不写,系统会默认提供一个无参构造
- B:方法名可以与类名同名,只是不符合命名规范
- D:一个class中可以定义N多个construtor,这些construtor构成构造方法的重载
39、Java中接口的修饰符可以为()(选择一项)
A、private
B、protected
C、final
D、abstract
答案:D
分析:
- 接口中的访问权限修饰符只可以是public或default
- 接口中的所有的方法必须要实现类实现,所以不能使用final
- 接口中所有的方法默认都是abstract的,所以接口可以使用abstract修饰,但通常abstract可以省略不写
40、给定以下代码,程序将输出()(选择一项)
class A {
public A(){
System.out.println("A");
}
}
class B extends A{
public B(){
System.out.println("B");
}
public static void main(String[] args) {
B b=new B();
}
}
A、不能通过编译
B、通过编译,输出AB
C、通过编译,输出B
D、通过编译,输出A
答案:B
分析:在继承关系下,创建子类对象,先执行父类的构造方法,再执行子类的构造方法。
Java基础不扎实的同学,再好好学一下哦~
Java基础入门全套教程