JAVA常用代码

基础语法

  1. Hello World
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}
  1. 数据类型
int a = 100;
float b = 5.25f;
double c = 5.25;
boolean d = true;
char e = 'A';
String f = "Hello";
  1. 条件判断
if (a > b) {
    // 条件成立时执行
} else if (a == b) {
    // 另一个条件
} else {
    // 条件都不成立时执行
}
  1. 循环结构
    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);
  1. 数组
int[] arr = new int[5];
arr[0] = 1;
arr[1] = 2;
// ...
int[] arr2 = {1, 2, 3, 4, 5};
  1. 方法定义与调用
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();
  1. 构造方法
public class User {
    String name;

    public User(String newName) {
        name = newName;
    }
}

User user = new User("Alice");
  1. 继承
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();
  1. 接口
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();
  1. 抽象类
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();
  1. 方法重载
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); // 调用第三个方法
  1. 方法重写
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"
  1. 多态
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
  1. 封装
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
  1. 静态变量和方法
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); // 打印圆的周长
  1. 内部类
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"
  1. 匿名类
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
  1. 集合框架
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
  1. 异常处理
try {
    int result = 10 / 0;
} catch (ArithmeticException e) {
    System.out.println("Cannot divide by zero!");
} finally {
    System.out.println("This will always be printed.");
}
  1. 文件I/O
    读取文件
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

String line;
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
    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("output.txt"))) {
    bw.write("Hello World!");
} catch (IOException e) {
    e.printStackTrace();
}
  1. 多线程
    创建线程
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();
  1. 同步
public class Counter {
    private int count = 0;

    public synchronized void increment() {
        count++;
    }

    public synchronized int getCount() {
        return count;
    }
}
  1. 高级多线程
    使用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();
}

posted @ 2024-02-29 13:41  吹吹风喝喝酒  阅读(22)  评论(0编辑  收藏  举报