首页 > 基础资料 博客日记
Java常见的100道面试题(内附答案及代码示例)持续更新
2023-07-24 13:11:06基础资料围观210次
文章Java常见的100道面试题(内附答案及代码示例)持续更新分享给大家,欢迎收藏Java资料网,专注分享技术知识
- 什么是Java程序?
Java程序是一组可执行的代码,由Java编译器编译生成,可以在Java虚拟机(JVM)上运行。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
- Java中的变量有哪些类型?
Java中的变量有八种基本类型:byte、short、int、long、float、double、char和boolean。
int age = 25;
String name = "John Doe";
double salary = 5000.50;
boolean isEmployed = true;
- 什么是Java包?
Java包是一种用于组织类和接口的机制。它可以将相关的类和接口组合在一起,以便更好地管理和维护代码。
package com.example.mypackage;
public class MyClass {
// class implementation
}
- Java中的继承是什么?
继承是Java中的一种机制,它允许一个类(称为子类)继承另一个类(称为父类)的属性和方法。
public class Animal {
String name;
int age;
public void eat() {
System.out.println("Animal is eating");
}
}
public class Dog extends Animal {
String breed;
public void bark() {
System.out.println("Dog is barking");
}
}
- Java中的接口是什么?
接口是Java中的一种机制,它定义了一组方法,但没有提供实现。类可以实现一个或多个接口,并提供接口中定义的方法的实现。
public interface MyInterface {
public void method1();
public int method2(String str);
}
public class MyClass implements MyInterface {
public void method1() {
System.out.println("Method 1 implementation");
}
public int method2(String str) {
return str.length();
}
}
- Java中的多态是什么?
多态是Java中的一种机制,它允许不同的对象对同一方法做出不同的响应。这是通过继承和接口实现的。
public class Animal {
public void makeSound() {
System.out.println("Animal is making a sound");
}
}
public class Dog extends Animal {
public void makeSound() {
System.out.println("Dog is barking");
}
}
public class Cat extends Animal {
public void makeSound() {
System.out.println("Cat is meowing");
}
}
Animal myAnimal = new Dog();
myAnimal.makeSound();
- 什么是Java的异常处理?
Java的异常处理是一种机制,它允许程序在出现异常时执行一些特定的操作,而不是直接崩溃。
try {
int result = 10 / 0;
} catch (ArithmeticException e) {
System.out.println("Exception caught: " + e.getMessage());
} finally {
System.out.println("Finally block executed");
}
- 什么是Java中的线程?
Java中的线程是一种机制,允许程序同时执行多个任务。每个线程都有自己的执行路径,并可以独立运行,但共享相同的内存空间。
class MyThread extends Thread {
public void run() {
System.out.println("Thread is running");
}
}
MyThread t = new MyThread();
t.start();
- Java中的集合有哪些?
Java中的集合包括List、Set、Map和Queue等数据结构,它们允许在单个对象中存储和操作多个值。
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
System.out.println(list);
Set<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.add("orange");
System.out.println(set);
Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
System.out.println(map);
Queue<String> queue = new LinkedList<>();
queue.add("apple");
queue.add("banana");
queue.add("orange");
System.out.println(queue);
- Java中的反射是什么?
Java中的反射是一种机制,它允许程序在运行时获取类的信息并操作类的属性和方法。
Class<?> c = Class.forName("com.example.MyClass");
Object obj = c.newInstance();
Method method = c.getMethod("myMethod");
method.invoke(obj);
- 什么是Java注解?
Java注解是一种机制,它允许程序在代码中添加元数据。注解可以应用于类、方法和变量等元素,以提供有关这些元素的额外信息。
@MyAnnotation(value = "someValue")
public class MyClass {
// class implementation
}
- Java中的Lambda表达式是什么?
Lambda表达式是Java 8中的一种机制,它允许程序以更简洁的方式定义匿名函数,从而使代码更易读和维护。
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
list.forEach((String s) -> System.out.println(s));
- Java中的流是什么?
Java中的流是一种机制,它允许程序以一种连续的方式处理数据。流可以从文件、网络和其他数据源中读取数据,并将其转换为不同的格式。
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
Stream<String> stream = list.stream();
stream.forEach((String s) -> System.out.println(s));
- Java中的泛型是什么?
Java中的泛型是一种机制,它允许程序在编译时指定一个通用的类型参数,并在运行时使用该类型参数。这样可以使代码更灵活和可重用。
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
for (String s : list) {
System.out.println(s);
}
- 什么是Java中的枚举?
Java中的枚举是一种机制,它允许程序将一组相关的常量组合在一起,以便更好地管理和维护代码。
public enum DayOfWeek {
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}
DayOfWeek today = DayOfWeek.MONDAY;
System.out.println(today);
- Java中的文件IO是什么?
Java中的文件IO是一种机制,它允许程序读取和写入文件。它允许程序访问磁盘上的文件,并在文件中读取和写入数据。
try {
FileWriter writer = new FileWriter("myfile.txt");
writer.write("Hello, world!");
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
- 什么是Java中的序列化?
Java中的序列化是一种机制,它允许程序将对象转换为字节流,并将其写入文件或通过网络发送。反序列化是将字节流转换回对象的过程。
public class MyClass implements Serializable {
private String name;
private int age;
public MyClass(String name, int age) {
this.name = name;
this.age = age;
}
// getters and setters
}
MyClass obj = new MyClass("John Doe", 25);
try {
FileOutputStream fileOut = new FileOutputStream("myfile.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(obj);
out.close();
fileOut.close();
} catch (IOException e) {
e.printStackTrace();
}
- Java中的正则表达式是什么?
Java中的正则表达式是一种机制,它允许程序在文本中查找和替换模式。正则表达式是由一些特殊字符组成的字符串,用于匹配文本中的模式。
String str = "Hello, world!";
Pattern pattern = Pattern.compile("Hello");
Matcher matcher = pattern.matcher(str);
if (matcher.find()) {
System.out.println("Pattern found");
}
- Java中的网络编程是什么?
Java中的网络编程是一种机制,它允许程序通过网络连接到其他程序,并进行通信。
try {
Socket socket = new Socket("localhost", 8080);
OutputStream out = socket.getOutputStream();
out.write("Hello, world!".getBytes());
out.flush();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
- Java中的注入攻击是什么?
Java中的注入攻击是一种安全漏洞,它允许攻击者向程序中添加恶意代码。注入攻击可以通过输入验证和过滤来防止。
String input = request.getParameter("input");
if (!isValid(input)) {
throw new IllegalArgumentException("Invalid input");
}
- Java中的加密是什么?
Java中的加密是一种机制,它允许程序将数据转换为不可读的格式,以保护数据的安全性。加密可以用于密码、信用卡号和其他敏感信息。
String plainText = "Hello, world!";
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update(plainText.getBytes());
byte[] digest = md.digest();
- Java中的JDBC是什么?
Java中的JDBC是一种机制,它允许程序通过数据库连接到其他程序,并进行数据交互。JDBC是Java数据库连接的缩写。
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase", "username", "password");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM mytable");
while (rs.next()) {
// process result set
}
rs.close();
stmt.close();
conn.close();
- Java中的JUnit是什么?
Java中的JUnit是一种测试框架,它允许程序员编写和运行自动化测试。JUnit可以帮助程序员发现代码中的错误和问题。
import org.junit.Test;
import static org.junit.Assert.*;
public class MyClassTest {
@Test
public void testMyMethod() {
MyClass obj = new MyClass();
int result = obj.myMethod();
assertEquals(10, result);
}
}
- 什么是Java中的日志记录?
Java中的日志记录是一种机制,它允许程序员记录程序的运行信息,并在需要时检查它们。日志可以帮助程序员诊断和解决问题。
import java.util.logging.*;
public class MyClass {
private static final Logger LOGGER = Logger.getLogger(MyClass.class.getName());
public void myMethod() {
LOGGER.info("Method called");
}
}
- Java中的JPA是什么?
Java中的JPA是一种机制,它允许程序员通过面向对象的方式访问数据库。JPA是Java持久性API的缩写。
@Entity
@Table(name = "mytable")
public class MyClass {
@Id
private Long id;
private String name;
// getters and setters
}
EntityManagerFactory emf = Persistence.createEntityManagerFactory("mydatabase");
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
MyClass obj = new MyClass();
obj.setName("John Doe");
em.persist(obj);
em.getTransaction().commit();
em.close();
emf.close();
文章来源:https://blog.csdn.net/qq_27244301/article/details/130385995
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签: