50个JAVA常见代码大全:学完这篇从Java小白到架构师
Java,作为一门流行多年的编程语言,始终占据着软件开发领域的重要位置。无论是初学者还是经验丰富的程序员,掌握Java中常见的代码和概念都是至关重要的。本文将列出50个Java常用代码示例,并提供相应解释,助力你从Java小白成长为架构师。
基础语法
1. Hello World
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
2. 数据类型
int a = 100;
float b = 5.25f;
double c = 5.25;
boolean d = true;
char e = 'A';
String f = "Hello";
3. 条件判断
if (a > b) {
// 条件成立时执行
} else if (a == b) {
// 另一个条件
} else {
// 条件都不成立时执行
}
4. 循环结构
for循环
for (int i = 0; i < 10; i++) {
System.out.println("i: " + i);
}
while循环
int i = 0;
while (i < 10) {
System.out.println("i: " + i);
i++;
}
do-while循环
int i = 0;
do {
System.out.println("i: " + i);
i++;
} while (i < 10);
5. 数组
int[] arr = new int[5];
arr[0] = 1;
arr[1] = 2;
// ...
int[] arr2 = {1, 2, 3, 4, 5};
6. 方法定义与调用
public static int add(int a, int b) {
return a + b;
}
int sum = add(5, 3); // 调用方法
面向对象编程
7. 类与对象
public class Dog {
String name;
public void bark() {
System.out.println(name + " says: Bark!");
}
}
Dog myDog = new Dog();
myDog.name = "Rex";
myDog.bark();
8. 构造方法
public class User {
String name;
public User(String newName) {
name = newName;
}
}
User user = new User("Alice");
9. 继承
public class Animal {
void eat() {
System.out.println("This animal eats food.");
}
}
public class Dog extends Animal {
void bark() {
System.out.println("The dog barks.");
}
}
Dog dog = new Dog();
dog.eat(); // 继承自Animal
dog.bark();
10. 接口
public interface Animal {
void eat();
}
public class Dog implements Animal {
public void eat() {
System.out.println("The dog eats.");
}
}
Dog dog = new Dog();
dog.eat();
11. 抽象类
public abstract class Animal {
abstract void eat();
}
public class Dog extends Animal {
void eat() {
System.out.println("The dog eats.");
}
}
Animal dog = new Dog();
dog.eat();
12. 方法重载
public class Calculator {
int add(int a, int b) {
return a + b;
```java
double add(double a, double b) {
return a + b;
}
int add(int a, int b, int c) {
return a + b + c;
}
}
Calculator calc = new Calculator();
calc.add(5, 3); // 调用第一个方法
calc.add(5.0, 3.0); // 调用第二个方法
calc.add(5, 3, 2); // 调用第三个方法
13. 方法重写
public class Animal {
void makeSound() {
System.out.println("Some sound");
}
}
public class Dog extends Animal {
@Override
void makeSound() {
System.out.println("Bark");
}
}
Animal myDog = new Dog();
myDog.makeSound(); // 输出 "Bark"
14. 多态
public class Animal {
void makeSound() {
System.out.println("Some generic sound");
}
}
public class Dog extends Animal {
@Override
void makeSound() {
System.out.println("Bark");
}
}
public class Cat extends Animal {
@Override
void makeSound() {
System.out.println("Meow");
}
}
Animal myAnimal = new Dog();
myAnimal.makeSound(); // Bark
myAnimal = new Cat();
myAnimal.makeSound(); // Meow
15. 封装
public class Account {
private double balance;
public Account(double initialBalance) {
if(initialBalance > 0) {
balance = initialBalance;
}
}
public void deposit(double amount) {
if(amount > 0) {
balance += amount;
}
}
public void withdraw(double amount) {
if(amount <= balance) {
balance -= amount;
}
}
public double getBalance() {
return balance;
}
}
Account myAccount = new Account(50);
myAccount.deposit(150);
myAccount.withdraw(75);
System.out.println(myAccount.getBalance()); // 应输出:125.0
16. 静态变量和方法
public class MathUtils {
public static final double PI = 3.14159;
public static double add(double a, double b) {
return a + b;
}
public static double subtract(double a, double b) {
return a - b;
}
public static double multiply(double a, double b) {
return a * b;
}
}
double circumference = MathUtils.PI * 2 * 5;
System.out.println(circumference); // 打印圆的周长
17. 内部类
public class OuterClass {
private String msg = "Hello";
class InnerClass {
void display() {
System.out.println(msg);
}
}
public void printMessage() {
InnerClass inner = new InnerClass();
inner.display();
}
}
OuterClass outer = new OuterClass();
outer.printMessage(); // 输出 "Hello"
18. 匿名类
abstract class SaleTodayOnly {
abstract int dollarsOff();
}
public class Store {
public SaleTodayOnly sale = new SaleTodayOnly() {
int dollarsOff() {
return 3;
}
};
}
Store store = new Store();
System.out.println(store.sale.dollarsOff()); // 应输出3
高级编程概念
19. 泛型
public class Box<T> {
private T t;
public void set(T t) {
this.t = t;
}
public T get() {
return t;
}
}
Box<Integer> integerBox = new Box<>();
integerBox.set(10);
System.out.println(integerBox.get()); // 应输出:10
20. 集合框架
ArrayList
import java.util.ArrayList;
ArrayList<String> list = new ArrayList<>();
list.add("Java");
list.add("Python");
list.add("C++");
System.out```java
.println(list); // 应输出:[Java, Python, C++]
HashMap
import java.util.HashMap;
HashMap<String, Integer> map = new HashMap<>();
map.put("Apple", 1);
map.put("Banana", 2);
map.put("Cherry", 3);
System.out.println(map.get("Apple")); // 应输出:1
21. 异常处理
try {
int result = 10 / 0;
} catch (ArithmeticException e) {
System.out.println("Cannot divide by zero!");
} finally {
System.out.println("This will always be printed.");
}
22. 文件I/O
读取文件
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
String line;
try (BufferedReader br = new BufferedReader(new FileReader(""))) {
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
写入文件
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
try (BufferedWriter bw = new BufferedWriter(new FileWriter(""))) {
bw.write("Hello World!");
} catch (IOException e) {
e.printStackTrace();
}
23. 多线程
创建线程
class MyThread extends Thread {
public void run() {
System.out.println("MyThread running");
}
}
MyThread myThread = new MyThread();
myThread.start();
实现Runnable接口
class MyRunnable implements Runnable {
public void run() {
System.out.println("MyRunnable running");
}
}
Thread thread = new Thread(new MyRunnable());
thread.start();
24. 同步
public class Counter {
private int count = 0;
public synchronized void increment() {
count++;
}
public synchronized int getCount() {
return count;
}
}
25. 高级多线程
使用Executors
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
ExecutorService executor = Executors.newFixedThreadPool(2);
executor.submit(() -> {
System.out.println("ExecutorService running");
});
executor.shutdown();
Future和Callable
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
Callable<Integer> callableTask = () -> {
return 10;
};
ExecutorService executorService = Executors.newSingleThreadExecutor();
Future<Integer> future = executorService.submit(callableTask);
try {
Integer result = future.get(); // this will wait for the task to finish
System.out.println("Future result: " + result);
} catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
} finally {
executorService.shutdown();
}
以上就是Java常见的50个代码示例,涵盖了从基础到高级的多方面知识。掌握这些代码片段将极大提升你的编码技能,并为成长为一名优秀的Java架构师打下坚实基础。持续实践和学习,相信不久的将来,你将在Java的世界里驾轻就熟。