Java基础核心知识点详解:从零开始掌握Java语法精髓
一、Java程序的基本结构
1.1 HelloWorld程序模板
// 单行注释:类声明
public class HelloWorld {
// 主方法(程序入口)
public static void main(String[] args) {
// 控制台输出
System.out.println("Hello, World!"); // 输出后换行
System.out.print("Welcome to Java"); // 输出不换行
}
}
1.2 结构解析
-
类声明:
public
访问修饰符class
类定义关键字- 类名必须与文件名一致(区分大小写)
-
main方法:
- JVM执行的入口点
- 固定签名:
public static void main(String[] args)
-
代码块:
- 使用大括号
{}
包裹代码 - 语句必须以分号
;
结尾
- 使用大括号
二、基础语法规范
2.1 变量与数据类型
数据类型 | 关键字 | 大小 | 取值范围 | 默认值 |
---|---|---|---|---|
整型 | int | 4字节 | -2^31 ~ 2^31-1 | 0 |
长整型 | long | 8字节 | -2^63 ~ 2^63-1 | 0L |
单精度 | float | 4字节 | ±3.4E+38 | 0.0f |
双精度 | double | 8字节 | ±1.7E+308 | 0.0d |
字符型 | char | 2字节 | Unicode字符 | '\u0000' |
布尔型 | boolean | 1位 | true/false | false |
变量声明示例:
int age = 25; // 显式初始化
double PI = 3.1415926; // 浮点数
char grade = 'A'; // 单引号
String name = "John Doe"; // 双引号
boolean isStudent = true; // 布尔值
2.2 运算符详解
算术运算符
int a = 10, b = 3;
System.out.println(a + b); // 13
System.out.println(a % b); // 1(取模)
关系运算符
System.out.println(5 == 5); // true
System.out.println(5 != 3); // true
System.out.println(5 > 3.14);// true(类型自动转换)
逻辑运算符
boolean x = true, y = false;
System.out.println(x && y); // false(与)
System.out.println(x || y); // true(或)
System.out.println(!x); // false(非)
2.3 流程控制结构
分支结构
// if-else if结构
int score = 85;
if (score >= 90) {
System.out.println("优秀");
} else if (score >= 80) {
System.out.println("良好"); // 输出此项
} else {
System.out.println("继续努力");
}
// switch语句
String day = "MONDAY";
switch (day) {
case "MONDAY":
System.out.println("工作日开始");
break;
case "SATURDAY":
System.out.println("周末");
break;
default:
System.out.println("其他工作日");
}
循环结构
// for循环(打印1-5)
for (int i = 1; i <= 5; i++) {
System.out.print(i + " ");
}
// while循环(计算阶乘)
int n = 5, result = 1;
while (n > 0) {
result *= n;
n--;
}
System.out.println("5! = " + result);
// 增强for循环
int[] numbers = {1, 3, 5, 7};
for (int num : numbers) {
System.out.println(num * 2);
}
三、面向对象编程(OOP)
3.1 类与对象
// 类定义
public class Person {
// 成员变量
private String name;
private int age;
// 构造方法
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 成员方法
public void introduce() {
System.out.println("我叫" + name + ",今年" + age + "岁");
}
}
// 实例化对象
Person p = new Person("张三", 25);
p.introduce(); // 输出:我叫张三,今年25岁
3.2 继承与多态
// 父类
class Animal {
void makeSound() {
System.out.println("动物发出声音");
}
}
// 子类
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("汪汪汪!");
}
void fetch() {
System.out.println("捡回飞盘");
}
}
// 多态示例
Animal myDog = new Dog();
myDog.makeSound(); // 输出:汪汪汪!
// myDog.fetch(); // 编译错误(父类引用无法调用子类特有方法)
四、常用工具类
4.1 字符串处理
String str = " Hello Java! ";
System.out.println(str.trim()); // "Hello Java!"
System.out.println(str.substring(1,5));// "Hell"
System.out.println(str.indexOf("Java"));// 6
System.out.println(str.replace(" ", "_"));// "_Hello_Java!_"
4.2 集合框架
// List示例
List<String> fruits = new ArrayList<>();
fruits.add("Apple");
fruits.add("Banana");
System.out.println(fruits.get(1)); // Banana
// Map示例
Map<Integer, String> users = new HashMap<>();
users.put(1001, "Alice");
users.put(1002, "Bob");
System.out.println(users.get(1002)); // Bob
4.3 异常处理
try {
int[] arr = new int[5];
System.out.println(arr[10]); // 抛出ArrayIndexOutOfBoundsException
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("数组越界错误:" + e.getMessage());
} finally {
System.out.println("无论是否异常都会执行");
}
五、进阶特性
5.1 接口与抽象类
// 接口定义
interface Drawable {
void draw(); // 默认public abstract
default void resize() { // JDK8默认方法
System.out.println("调整大小");
}
}
// 实现接口
class Circle implements Drawable {
@Override
public void draw() {
System.out.println("绘制圆形");
}
}
5.2 泛型应用
// 泛型方法
public static <T> T getMiddle(T[] arr) {
return arr[arr.length / 2];
}
// 使用示例
String[] names = {"Alice", "Bob", "Charlie"};
System.out.println(getMiddle(names)); // 输出Bob
六、开发实践建议
-
命名规范:
- 类名使用大驼峰:
MyFirstClass
- 变量/方法使用小驼峰:
studentName
- 常量全大写:
MAX_COUNT
- 类名使用大驼峰:
-
代码风格:
// 好的缩进 if (condition) { doSomething(); } else { doOtherThing(); } // 适当的空行分隔逻辑块
-
调试技巧:
- 使用IDE断点调试
- 打印关键变量值
- 使用
try-catch
捕获异常
七、学习路线推荐
- 基础语法 → 面向对象 → 集合框架 → IO流 → 多线程 → 网络编程
- 推荐书籍:
- 《Java核心技术 卷Ⅰ》
- 《Effective Java》
- 《Head First Java》
- 官方文档:
掌握这些基础知识后,建议通过LeetCode算法题和实际项目巩固所学知识。编程能力的提升关键在于持续实践,遇到问题善用官方文档和Stack Overflow等资源。