JAVA 面试题-CORE JAVA 部分
--感谢 SD0501 班毕业学员李晓宾的提供,希望对面试学员和在校学员有所帮助。
1. 在 main(String[] args)方法内是否可以调用一个非静态方法?
答案:不能
2. 同一个文件里是否可以有两个 public 类?
答案:不能
3. 方法名是否可以与构造器的名字相同? 答案:可以。
4. 初始化了一个没有 run()方法的线程类,是否会出错?
答案:不会。
第一种方法:直接继承 Thread 类。
public class Test
{
public static void main(String[] args)
{
ThreadClass t = new ThreadClass();
t.start();
System.out.println("end");//输出“end”
}
}
class ThreadClass extends Thread //Thread 类已经实现了空的 run()方法。
{
}
第二种方法:实现 Runnable 接口
public class Test
{
public static void main(String[] args)
{
ThreadClass t = new ThreadClass();
Thread thread = new Thread(t);
thread.start();
System.out.println("end");
}
}
class ThreadClass implements Runnable
{
public void run() //必须有此方法否则编译报错。它是 Runnable 接口中的抽象方法。
{
System.out.println("Threads");
}
}
4. 局部内部类是否可以访问非 final 变量?
答案:不能访问局部的,可以访问成员变量(全局的)。
class Out
{
private String name = "out.name";
void print()