一、面向对象编程(OOP)
1、类与对象
- 定义类:
public class Person {
// 属性
String name;
int age;
// 方法
void sayHello() {
System.out.println("你好,我是" + name);
}
}
创建对象:
Person p1 = new Person();
p1.name = "张三";
p1.sayHello();
2、封装
使用 private
保护属性,通过 getter/setter
访问:
public class Person {
private int age;
public int getAge() { return age; }
public void setAge(int age) {
if (age > 0) this.age = age;
}
}
3、继承
extends
关键字:
public class Student extends Person {
String school;
}
4、多态
- 父类引用指向子类对象:
Person p = new Student();
- 方法重写(Override):
@Override
void sayHello() {
System.out.println("我是学生");
}
5、抽象类与接口
抽象类(abstract class
):
abstract class Animal {
abstract void eat();
}
接口(interface
):
interface Flyable {
void fly();
}
二、Java核心类库
目标:掌握常用工具类的使用
1、String类
String s1 = "Hello";
String s2 = new String("World");
System.out.println(s1.length()); // 5
System.out.println(s1 + s2); // HelloWorld
2、Math类
Math.max(3, 5); // 5
Math.sqrt(16); // 4.0
3、Scanner类(输入)
Scanner scanner = new Scanner(System.in);
System.out.print("请输入姓名:");
String name = scanner.nextLine();
三、集合框架
目标:学会操作List、Set、Map
1、List(有序可重复)
List<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
System.out.println(list.get(0)); // Apple
2、Set(无序唯一)
Set<Integer> set = new HashSet<>();
set.add(10);
set.add(10); // 不会重复添加
3、Map(键值对)
Map<String, Integer> map = new HashMap<>();
map.put("Tom", 90);
map.get("Tom"); // 90