1. 基本结构
1.1 类和对象
- 类:类是 Java 编程的基本单位,用于定义对象的属性和行为。每个 Java 程序都包含一个或多个类。
- 对象:对象是类的实例,表示实际存在的实体。
public class HelloWorld {
// main 方法是程序的入口点
public static void main(String[] args) {
System.out.println("Hello, World!"); // 输出 Hello, World!
}
}
public
:访问修饰符,表示类、方法或变量可以被其他类访问。static
:表示该方法属于类而不是类的实例,可以直接通过类调用。void
:表示方法没有返回值。main
:Java 程序的入口点方法。
1.2 变量和数据类型
- 基本数据类型:
byte
:8位,-128 到 127。short
:16位,-32,768 到 32,767。int
:32位,-2^31 到 2^31-1。long
:64位,-2^63 到 2^63-1。float
:32位,精度约为 6-7 位数字。double
:64位,精度约为 15 位数字。char
:16位,表示单一字符(如 ‘A’)。boolean
:只包含 true
和 false
两个值。
int number = 10; // 整型变量
double price = 19.99; // 双精度浮点型变量
char letter = 'A'; // 字符型变量
boolean isValid = true;// 布尔型变量
String text = "Hello, Java!"; // 字符串
int[] numbers = {1, 2, 3, 4, 5}; // 整型数组
2. 控制流语句
2.1 条件语句
int age = 20;
if (age >= 18) {
System.out.println("成年人");
} else {
System.out.println("未成年人");
}
int day = 3;
switch (day) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
default:
System.out.println("无效的日期");
}
2.2 循环语句
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
int j = 0;
while (j < 5) {
System.out.println(j);
j++;
}
int k = 0;
do {
System.out.println(k);
k++;
} while (k < 5);
3. 数组和字符串
3.1 数组
int[] numbers = {1, 2, 3, 4, 5}; // 静态初始化
int[] moreNumbers = new int[5]; // 动态初始化
moreNumbers[0] = 1;
moreNumbers[1] = 2;
// 访问数组元素
System.out.println(numbers[0]); // 输出 1
3.2 字符串
String message = "Hello, Java!";
int length = message.length(); // 获取字符串长度
String upperCaseMessage = message.toUpperCase(); // 转为大写
String substring = message.substring(0, 5); // 获取子字符串
System.out.println(upperCaseMessage); // 输出 "HELLO, JAVA!"
4. 面向对象编程
4.1 类和对象
public class Person {
// 属性
String name;
int age;
// 方法
public void greet() {
System.out.println("Hello, my name is " + name);
}
}
Person person = new Person();
person.name = "Alice";
person.age = 30;
person.greet(); // 输出 "Hello, my name is Alice"
4.2 继承
public class Animal {
public void eat() {
System.out.println("This animal eats food.");
}
}
public class Dog extends Animal {
public void bark() {
System.out.println("The dog barks.");
}
}
Dog myDog = new Dog();
myDog.eat(); // 继承自 Animal 类
myDog.bark(); // 子类自己的方法
4.3 封装
- 访问控制:
- 使用
private
、protected
和 public
控制对属性和方法的访问权限。
public class Person {
private String name; // 私有属性
public String getName() { // 公有方法
return name;
}
public void setName(String name) { // 公有方法
this.name = name;
}
}
4.4 多态
public class Animal {
public void makeSound() {
System.out.println("Animal makes a sound");
}
}
public class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Dog barks");
}
}
Animal myAnimal = new Dog(); // 父类引用指向子类对象
myAnimal.makeSound(); // 调用 Dog 类中的方法
5. 异常处理
try {
int result = 10 / 0; // 可能抛出异常
} catch (ArithmeticException e) {
System.out.println("Cannot divide by zero."); // 处理异常
} finally {
System.out.println("This block always executes.");
}
public class MyException extends Exception {
public MyException(String message) {
super(message);
}
}
public class Test {
public static void main(String[] args) {
try {
throw new MyException("Custom exception message");
} catch (MyException e) {
System.out.println(e.getMessage());
}
}
}
6. 常用标准库
- 集合框架:
- Java 提供了多种集合类,例如
ArrayList
、HashMap
。
import java.util.ArrayList;
ArrayList<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
System.out.println(list.get(0)); // 输出 "Apple"
- 输入输出:
- 使用
Scanner
类来读取输入,使用 File
类进行文件操作。
import java.util.Scanner;
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your name: ");
String name = scanner.nextLine();
System.out.println("Hello, " + name);