diff --git a/day06/src/com/inmind/object_private03/Student.java b/day06/src/com/inmind/object_private03/Student.java index ebd8025..37eb44f 100644 --- a/day06/src/com/inmind/object_private03/Student.java +++ b/day06/src/com/inmind/object_private03/Student.java @@ -4,7 +4,6 @@ public class Student { private String name; private int age = 20; private int id; - //学习 public void study(String book) { System.out.println("学号:"+id+",姓名:"+name+",年龄为"+age+"岁的学生在学"+book); @@ -14,30 +13,43 @@ public class Student { public String getName(){ return name; } + //在开发中,定义变量尽量增强可读性,见其名知其意 + public void setName(String name){ + /* + 当前代码想要的意思:成员变量 = 局部变量; + 当前的意思却是:局部变量 = 局部变量; + 注意:当成员变量与局部变量重名时!!!就近原则 - public void setName(String n){ - name = n; + 如何解决当前的重名问题?? + 使用this:this.成员变量名,这样就表示的是当前对象的成员变量 + this:方法中的对象指的是,哪个对象调用该方法,那么这个this就表示该对象 + + this的作用:区分成员变量与局部变量 + */ + System.out.println(this); + this.name = name; } public int getAge(){ return age; } - public void setAge(int a){ + public void setAge(int age){ //增加数据的安全性的判断功能 - if (a < 1||a>120) { + if (age < 1||age>120) { System.out.println("您输入的年龄非法的"); return; } - age = a; + this.age = age; } public int getId(){ return id; } - public void setId(int i){ - id = i; + //shift+f6:修改名称 + public void setId(int id){ + this.id = id; } } diff --git a/day06/src/com/inmind/object_private03/StudentTest.java b/day06/src/com/inmind/object_private03/StudentTest.java index 57571a8..177550a 100644 --- a/day06/src/com/inmind/object_private03/StudentTest.java +++ b/day06/src/com/inmind/object_private03/StudentTest.java @@ -15,6 +15,7 @@ public class StudentTest { public static void main(String[] args) { //创建一个学生对象 Student s = new Student(); + System.out.println(s); s.study("java"); //s.属性 = 值 //对象的属性的设置值