Java 是什么:Java 是一种面向对象的编程语言,具有跨平台、高性能、安全性高等特点。
Java 的特点:
跨平台(Write Once, Run Anywhere)。
自动内存管理(垃圾回收机制)。
丰富的类库和框架支持。
Java 的应用领域:
后端开发(Spring、Spring Boot)。
移动开发(Android)。
大数据(Hadoop、Spark)。
桌面应用(JavaFX)。
JDK(Java Development Kit):Java 开发工具包,包含编译器(javac)、运行时环境(JRE)等。
JRE(Java Runtime Environment):Java 运行时环境,用于运行 Java 程序。
IDE(集成开发环境):
IntelliJ IDEA
Eclipse
NetBeans
(1)数据类型
基本数据类型:
整数:byte
、short
、int
、long
浮点数:float
、double
字符:char
布尔:boolean
引用数据类型:
类、接口、数组、字符串(String
)
(2)变量与常量
变量:
java
复制
int age = 25; String name = "Alice";
常量(使用 final
关键字):
java
复制
final double PI = 3.14159;
(3)运算符
算术运算符:+
、-
、*
、/
、%
关系运算符:==
、!=
、>
、<
、>=
、<=
逻辑运算符:&&
、||
、!
赋值运算符:=
、+=
、-=
(4)控制语句
条件语句:
java
复制
if (condition) { // 代码块 } else if (condition) { // 代码块 } else { // 代码块 }
循环语句:
java
复制
for (int i = 0; i < 10; i++) { // 代码块 } while (condition) { // 代码块 } do { // 代码块 } while (condition);
switch 语句:
java
复制
switch (variable) { case value1: // 代码块 break; case value2: // 代码块 break; default: // 代码块 }
(1)类与对象
类:定义对象的模板。
java
复制
class Dog { String name; int age; void bark() { System.out.println("Woof!"); } }
对象:类的实例。
java
复制
Dog myDog = new Dog(); myDog.name = "Buddy"; myDog.age = 3; myDog.bark();
(2)构造方法
用于初始化对象。
java
复制
class Dog { String name; int age; Dog(String name, int age) { this.name = name; this.age = age; } }
(3)继承
子类继承父类的属性和方法。
java
复制
class Animal { void eat() { System.out.println("Eating..."); } } class Dog extends Animal { void bark() { System.out.println("Woof!"); } }
(4)多态
同一个方法在不同对象中有不同的实现。
java
复制
Animal myDog = new Dog(); myDog.eat(); // 调用 Dog 类的 eat 方法
(5)封装
使用访问修饰符(private
、protected
、public
)控制属性和方法的访问权限。
java
复制
class Dog { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }
(6)抽象类与接口
抽象类:
java
复制
abstract class Animal { abstract void makeSound(); }
接口:
java
复制
interface Animal { void makeSound(); }
try-catch-finally:
java
复制
try { // 可能抛出异常的代码 } catch (Exception e) { // 异常处理 } finally { // 无论是否发生异常都会执行的代码 }
自定义异常:
java
复制
class MyException extends Exception { MyException(String message) { super(message); } }
常用集合类:
ArrayList
:动态数组。
LinkedList
:链表。
HashMap
:键值对集合。
HashSet
:无序且不重复的集合。
示例:
java
复制
List<String> list = new ArrayList<>(); list.add("Java"); list.add("Python"); Map<String, Integer> map = new HashMap<>(); map.put("Alice", 25); map.put("Bob", 30);
文件读写:
java
复制
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) { String line; while ((line = br.readLine()) != null) { System.out.println(line); } } catch (IOException e) { e.printStackTrace(); }
创建线程:
java
复制
class MyThread extends Thread { public void run() { System.out.println("Thread is running"); } } MyThread t = new MyThread(); t.start();
实现 Runnable 接口:
java
复制
class MyRunnable implements Runnable { public void run() { System.out.println("Thread is running"); } } Thread t = new Thread(new MyRunnable()); t.start();
String:字符串操作。
Math:数学运算。
Arrays:数组操作。
Collections:集合操作。
书籍:
《Java 核心技术》
《Effective Java》
网站:
Oracle 官方文档
菜鸟教程
实践:
LeetCode
GitHub 开源项目