chap7学习内容 一、什么是类和对象概念说明类Class模板、图纸对象Object根据类创建的具体实例类是抽象的对象是具体的二、类的定义1️⃣ 类的基本结构class 类名 { 属性成员变量 方法成员方法 }2️⃣ 示例Student 类class Student { String name; int age; double score; public void study() { System.out.println(学习); } }三、对象的创建与使用1️⃣ 创建对象Student s new Student();2️⃣ 访问属性和方法s.name 张三; s.age 23; s.score 99.0; System.out.println(s.name - s.age - s.score); s.study();规则对象.属性对象.方法()四、构造方法1️⃣ 什么是构造方法构造方法 创建对象时自动调用的方法特点方法名 必须和类名相同没有返回值不写时系统会提供 默认无参构造2️⃣ 无参构造public Student() { System.out.println(无参构造...); }调用方式Student s new Student();3️⃣ 有参构造public Student(String name, int age, double score) { this.name name; this.age age; this.score score; }创建对象Student s new Student(李四, 20, 88.5);4️⃣ 构造方法重载public Dog() {} public Dog(int age) {} public Dog(String name, int age, char sex) {}好处创建对象更灵活代码更简洁五、this 关键字1️⃣ this 的作用用法说明this.属性区分成员变量和局部变量this()调用本类其他构造方法2️⃣ this 区分同名变量public void study() { int age 50; System.out.println(this.age); // 成员变量 System.out.println(age); // 局部变量 }3️⃣ this() 调用构造方法public Student(String name, int age, double score) { this(); // 必须写在第一行 this.name name; this.age age; this.score score; }注意this()只能在构造方法中使用必须是第一条语句六、方法重载1️⃣ 什么是方法重载方法名相同参数不同判断标准项目是否影响重载参数个数不同是参数类型不同是参数顺序不同是返回值不同否修饰符不同否2️⃣ 示例public void ma() {} public void ma(int a) {} public void ma(String str) {} public void ma(int a, int b) {}调用时mc.ma(); // ma() mc.ma(); // ma(String) mc.ma(2, 90); // ma(int, int)JVM 根据 参数类型和数量 自动匹配方法七、对象的内存与引用1️⃣ 多个引用指向同一对象Student s4 null; s4 s2; s4.age 60;结果s2.age和s4.age同时改变原因s2 和 s4 指向堆中同一个对象2️⃣ null 的含义Student s5 null;空指针异常System.out.println(s5.age); // NullPointerException规则null 对象 不能访问属性或方法