7.20学习计划
一、今天做了什么
** Java 学习**
重点学习面向对象封装、私有成员变量、get/set 方法与构造方法,动手编写学生类 Demo,练习类与对象的创建、属性赋值、信息打印;
1定义学生类
// 学生类 public class Student { // 成员变量(属性) String name; int age; double score; // 成员方法 public void showInfo() { System.out.println("姓名:" + name + ",年龄:" + age + ",分数:" + score); } }
2. 创建对象、调用属性和方法
public class TestStudent { public static void main(String[] args) { // 创建学生对象 Student s1 = new Student(); // 赋值 s1.name = "张三"; s1.age = 18; s1.score = 92.5; // 调用方法 s1.showInfo(); } }
运行输出:
plaintext
姓名:张三,年龄:18,分数:92.5
3. 核心知识点 1:this 关键字
当方法参数名和成员变量重名,用this.变量代表当前对象的属性:
public void setName(String name) { this.name = name; }
4. 核心知识点 2:封装 private + get/set
直接访问s1.age不安全,限制外部随意修改,规范写法:
public class Student { // 私有成员变量,外部无法直接访问 private String name; private int age; private double score; // get 获取值 public String getName() { return name; } // set 设置值,可加校验 public void setAge(int age) { if (age > 0 && age < 120) { this.age = age; } else { System.out.println("年龄不合法"); } } public int getAge() { return age; } public void setScore(double score) { if (score >= 0 && score <= 100) { this.score = score; } else { System.out.println("分数超出范围"); } } public double getScore() { return score; } public void showInfo() { System.out.println("姓名:" + name + ",年龄:" + age + ",分数:" + score); } }
调用示例:
Student s = new Student(); s.setName("李四"); s.setAge(20); s.setScore(88); s.showInfo();
6. 构造方法
作用:创建对象时直接给属性赋值,不用多次 set
方法名和类名完全一致
无返回值
无参构造(默认自带)
public Student() { System.out.println("无参构造执行"); }
有参构造(一次性赋值)
public Student(String name, int age, double score) { this.name = name; this.age = age; this.score = score; }
创建对象简化:
Student s = new Student("王五", 19, 95); s.showInfo();
完成驾照科目二考试,顺利通过;
背诵英语六级核心词汇
巩固单词记忆。

二、明天准备做什么
Java 继续深入学习 this 关键字、方法重载,完善简易学生管理系统代码;
预约科目三练习,熟悉路考操作流程与考试要点;
复盘今日六级生词,新增一组六级词汇背诵,搭配短句记忆。
三、遇到的问题及解决办法
Java 问题:写构造方法时,成员变量和形参同名,分不清变量指向,输出数据错乱。
解决:学习this关键字用法,this.属性名代表当前对象的成员变量,区分开局部形参,修改代码后运行正常。
单词记忆问题:部分六级形近单词容易混淆,记不牢。
解决:把易混单词整理在笔记本,对比拼写、词义、例句,反复朗读加深区分记忆。

浙公网安备 33010602011771号