java面试题 代码
- 格式:docx
- 大小:37.71 KB
- 文档页数:7
java面试题 代码
Java面试题代码
Java是一种面向对象的编程语言,被广泛应用于软件开发领域。在面试中,Java相关的问题往往会是考察候选人编程能力和理解Java语言特性的重要环节。下面将介绍几个常见的Java面试题,并给出相应的代码示例,希望对大家的面试准备有所帮助。
1. 单例模式(Singleton Pattern)
单例模式是一种创建型设计模式,保证一个类只有唯一一个实例,并提供一个全局访问点。下面是一个简单的单例模式的Java代码示例:
```java
public class Singleton {
private static Singleton instance;
private Singleton() {
// 私有构造函数
}
public static Singleton getInstance() {
if (instance == null) {
synchronized (Singleton.class) {
if (instance == null) { instance = new Singleton();
}
}
}
return instance;
}
}
```
2. 线程安全的集合类
Java提供了一些线程安全的集合类,用于并发环境下的操作。例如,`java.util.concurrent`包中的`ConcurrentHashMap`和`CopyOnWriteArrayList`。下面是一个使用`CopyOnWriteArrayList`的代码示例:
```java
import java.util.concurrent.CopyOnWriteArrayList;
public class ThreadSafeListExample {
private static CopyOnWriteArrayList
CopyOnWriteArrayList<>();
public static void main(String[] args) {
Thread t1 = new Thread(() -> { for (int i = 0; i < 1000; i++) {
list.add("Element " + i);
}
});
Thread t2 = new Thread(() -> {
for (int i = 0; i < 1000; i++) {
list.add("Element " + i);
}
});
t1.start();
t2.start();
try {
t1.join();
t2.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("List size: " + list.size());
} }
```
3. 异常处理
异常处理是Java程序中的重要部分,合理处理异常可以增强程序的健壮性。下面是一个简单的异常处理的代码示例:
```java
public class ExceptionHandlingExample {
public static void main(String[] args) {
try {
int result = divide(10, 0);
System.out.println("Result: " + result);
} catch (ArithmeticException e) {
System.out.println("Error: Division by zero");
}
}
public static int divide(int dividend, int divisor) {
return dividend / divisor;
}
} ```
4. 多线程编程
Java支持多线程编程,使用多线程可以充分利用多核处理器的性能。下面是一个简单的多线程编程的代码示例:
```java
public class MultiThreadExample {
public static void main(String[] args) {
Thread t1 = new Thread(() -> {
for (int i = 0; i < 10; i++) {
System.out.println("Thread 1: " + i);
}
});
Thread t2 = new Thread(() -> {
for (int i = 0; i < 10; i++) {
System.out.println("Thread 2: " + i);
}
});
t1.start();
t2.start(); }
}
```
5. 文件操作
Java提供了丰富的文件操作API,可以用于读写文件、创建目录等操作。下面是一个简单的文件读写的代码示例:
```java
import java.io.*;
public class FileExample {
public static void main(String[] args) {
String fileName = "example.txt";
// 写文件
try (BufferedWriter writer = new BufferedWriter(new
FileWriter(fileName))) {
writer.write("Hello, World!");
} catch (IOException e) {
e.printStackTrace();
}
// 读文件 try (BufferedReader reader = new BufferedReader(new
FileReader(fileName))) {
String line = reader.readLine();
System.out.println("File content: " + line);
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以上是几个常见的Java面试题以及对应的代码示例,希望对大家的面试准备有所帮助。在面试中,除了熟悉代码的书写和调试以外,还需要对Java语言的特性和常用类库有深入的理解。通过不断的实践和学习,相信你能在面试中取得好的成绩。加油!