Java 语言全面教程
一、Java 概述
Java 是一种面向对象的编程语言,具有"一次编写,到处运行"(Write Once, Run Anywhere)的跨平台特性。它的核心思想是面向对象编程(OOP),围绕封装、继承、多态三大特性展开。
二、Java 基础语法
1. 基本数据类型(8种)
- 整型:byte、short、int(最常用)、long
- 浮点型:float、double(最常用)
- 字符型:char(存储单个字符,如 'A')
- 布尔型:boolean(只有 true 和 false 两个值)
2. 变量声明与使用
java
int age = 25; // 整型变量
String name = "张三"; // 引用类型变量
3. 程序逻辑控制
- 运算符:算术运算符(+, -, *, /, %)、关系运算符(>, <, ==, !=)、逻辑运算符(&&, ||, !)等
- 条件语句:if-else、switch-case
- 循环语句:for、while、do-while
三、面向对象编程(OOP)
1. 类与对象
- 类:是对象的蓝图或模板,定义了对象的属性(字段)和行为(方法)
- 对象:是类的实例,是真实存在的个体
java
// 类的定义
public class Person {
// 成员变量(属性)
String name;
int age;
// 成员方法(行为)
public void sayHello() {
System.out.println("Hello, I'm " + name);
}
}
// 创建和使用对象
Person person = new Person();
person.name = "张三";
person.sayHello();
2. 构造器
构造器用于初始化对象,具有以下特点:
- 必须与类名相同
- 没有返回类型,也不能写void
- 使用new关键字创建对象时会自动调用构造器
java
public class Person {
String name;
// 无参构造器
public Person() {
name = "默认名称";
}
// 有参构造器
public Person(String name) {
this.name = name;
}
}
3. 面向对象三大特性
(1) 封装
将数据(字段)和操作数据的方法绑定在一起,并隐藏内部实现细节。通常通过将字段设为private,然后提供公共的getter和setter方法来访问和修改。
(2) 继承
允许一个类(子类)继承另一个类(父类)的字段和方法,实现代码复用。使用extends关键字。
java
class Animal {
public void eat() {
System.out.println("动物需要进食");
}
}
class Dog extends Animal {
@Override
public void eat() {
System.out.println("狗吃骨头");
}
}
(3) 多态
同一个方法在不同对象上有不同的实现。多态的实现需要满足三个条件:继承、方法重写、父类引用指向子类对象。
四、接口
1. 接口的定义与特点
接口是抽象方法的集合,通常用interface关键字声明:
- 方法默认都是public abstract
- 变量默认是public static final
- 接口不能被实例化,需要被实现
- 实现接口的类必须实现所有方法,否则必须声明为抽象类
java
interface IPay {
int MONEY = 100; // 相当于 public static final int MONEY = 100;
void pay(); // 相当于 public abstract void pay();
}
class Alipay implements IPay {
@Override
public void pay() {
System.out.println("支付宝支付");
}
}
2. 接口的继承与实现
- 接口可以继承另一个接口,使用extends关键字
- 一个类可以实现多个接口,用逗号分隔
java
interface IOnlinePay extends IPay {}
class WeChatPay implements IPay, IOnlinePay {
// 实现方法
}
3. JDK 8 接口新特性
- static方法:接口中可以有static方法,必须有方法实现体,接口名直接调用
- default方法:接口中新增default关键字修饰的方法,必须有方法体,可以在子类或子接口中被重写
java
interface IPay {
static void staticMethod() {
System.out.println("接口中的静态方法");
}
default void defaultMethod() {
System.out.println("接口中的默认方法");
}
}
五、常用API与数据结构
1. Collections框架
Java的Collections框架提供了一套用于存储和操作数据的接口和类:
(1) List接口
- 有序集合,允许重复元素
- 常用实现类:ArrayList、LinkedList
java
import java.util.ArrayList;
import java.util.List;
List<String> list = new ArrayList<>();
list.add("Java");
list.add("Python");
(2) Set接口
- 无序集合,不允许重复元素
- 常用实现类:HashSet、TreeSet
(3) Map接口
- 键值对集合,不允许重复键
- 常用实现类:HashMap、TreeMap
2. 常用工具类
- String:字符串操作类
- StringBuilder/StringBuffer:可变字符串,用于高效拼接字符串
- Date/Calendar:日期时间处理
- Math:数学运算方法
- Arrays:数组操作工具类
六、异常处理
Java使用异常机制来处理程序运行时可能出现的错误:
java
try {
// 可能发生异常的代码
int result = 10 / 0;
} catch (ArithmeticException e) {
// 捕获并处理异常
System.out.println("发生算术异常:" + e.getMessage());
} finally {
// 无论是否发生异常都会执行的代码
System.out.println("程序结束");
}
七、Java高级特性
- 泛型:提供编译时类型安全检测机制
- 反射:运行时动态获取类的信息和调用方法
- 注解:为代码添加元数据信息
- 多线程:并发编程支持
- IO流:文件和网络操作
八、学习建议
- 循序渐进:从基础语法开始,逐步掌握面向对象编程
- 多写代码:理论结合实践,通过大量练习巩固知识
- 阅读源码:学习Java标准库和优秀开源框架的实现
- 参与项目:通过实际项目提升编程能力
Java是一门功能强大且广泛应用的编程语言,掌握好Java基础知识对后续学习框架和深入理解编程思想都至关重要。