3月3日java学习笔记
一、基础语法回顾
- 数据类型
基本类型:
java
int age = 25; // 4字节
double salary = 8000.5; // 8字节
char grade = 'A'; // 单字符
boolean isPass = true; // true/false
引用类型:String、数组、对象等
java
String name = "Alice";
int[] scores = {90, 85, 95};
2. 类型转换
自动转换:小类型→大类型(int→double)
强制转换:大类型→小类型(可能丢失精度)
java
double num = 9.8;
int integerPart = (int) num; // 结果为9
3. 运算符
三目运算符示例:
java
int max = (a > b) ? a : b;
注意:==比较基本类型值,引用类型比较地址;equals()比较内容。
二、流程控制
- 分支结构
switch穿透性示例:
java
switch(day) {
case 1: case 2:
System.out.println("工作日");
break;
default:
System.out.println("周末");
}
2. 循环结构
for-each循环(遍历数组/集合):
java
int[] nums = {1,2,3};
for(int num : nums) {
System.out.println(num);
}
break跳出整个循环,continue跳过本次迭代。
三、面向对象核心
- 类与对象
类定义:
java
public class Student {
private String name; // 封装字段
// 构造方法
public Student(String name) {
this.name = name;
}
// Getter/Setter
public String getName() { return name; }
}
2. 继承与多态
继承语法:
java
class Animal { void eat() { /.../ } }
class Dog extends Animal {
@Override
void eat() { System.out.println("吃狗粮"); } // 方法重写
}
多态示例:
java
Animal myPet = new Dog();
myPet.eat(); // 调用Dog类的eat()
四、易错点总结
== vs equals:
java
String s1 = new String("hi");
String s2 = new String("hi");
System.out.println(s1 == s2); // false(地址不同)
System.out.println(s1.equals(s2)); // true(内容相同)
循环陷阱:
java
for(int i=0; i<5; i++); // 错误的分号导致空循环体
{ System.out.println(i); }
静态方法调用:
静态方法中不能直接使用this和super。
浙公网安备 33010602011771号