day06-面向对象特性之封装的优化_this的概述和使用
This commit is contained in:
@@ -15,11 +15,11 @@ public class Demo04 {
|
|||||||
s.name = "张三";
|
s.name = "张三";
|
||||||
System.out.println(s.age);
|
System.out.println(s.age);
|
||||||
System.out.println(s.name);*/
|
System.out.println(s.name);*/
|
||||||
|
System.out.println("对象s的地址为"+s);
|
||||||
s.setName("张三");
|
s.setName("李四");
|
||||||
System.out.println(s.getName());
|
System.out.println(s.getName());
|
||||||
|
|
||||||
s.setAge(-18);
|
s.setAge(18);
|
||||||
System.out.println(s.getAge());
|
System.out.println(s.getAge());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ package com.inmind.private02;
|
|||||||
/*
|
/*
|
||||||
private:权限修饰符,最小一个权限,被它修饰的内容只能在本类中访问,private可以修饰
|
private:权限修饰符,最小一个权限,被它修饰的内容只能在本类中访问,private可以修饰
|
||||||
成员方法和成员变量,表示私有化
|
成员方法和成员变量,表示私有化
|
||||||
|
|
||||||
|
注意:在本类中,使用任意的成员内容,前面都有this.,不写,编译器也会加上
|
||||||
*/
|
*/
|
||||||
public class Student {
|
public class Student {
|
||||||
//姓名
|
//姓名
|
||||||
@@ -11,19 +13,28 @@ public class Student {
|
|||||||
|
|
||||||
//get方法
|
//get方法
|
||||||
public String getName(){
|
public String getName(){
|
||||||
return name;
|
return this.name;
|
||||||
}
|
}
|
||||||
|
|
||||||
//set方法
|
//set方法
|
||||||
public void setName(String a){
|
public void setName(String name){
|
||||||
name = a;
|
/*
|
||||||
|
当前代码想要的效果:成员变量 = 局部变量
|
||||||
|
但当前的效果:局部变量 = 局部变量
|
||||||
|
如何解决当前重名的问题???
|
||||||
|
使用this:this.成员变量名,一定表示当前对象的成员变量
|
||||||
|
注意:this表示一个对象,哪个对象调用了当前的方法,那么这个this就表示该对象
|
||||||
|
*/
|
||||||
|
this.name = name;
|
||||||
|
//s.name = name;
|
||||||
|
System.out.println("this:"+this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//get方法
|
//get方法
|
||||||
public int getAge(){
|
public int getAge(){
|
||||||
return age;
|
return this.age;
|
||||||
}
|
}
|
||||||
|
|
||||||
//set方法
|
//set方法
|
||||||
@@ -32,12 +43,12 @@ public class Student {
|
|||||||
System.out.println("您输入的年龄有误");
|
System.out.println("您输入的年龄有误");
|
||||||
return;//提前结束方法,如果年龄小于0或者大于120,则直接返回,不执行下面的代码
|
return;//提前结束方法,如果年龄小于0或者大于120,则直接返回,不执行下面的代码
|
||||||
}
|
}
|
||||||
age = a;
|
this.age = a;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//学习
|
//学习
|
||||||
public void study(String book){
|
public void study(String book){
|
||||||
System.out.println(name+"学生正在学习" + book);
|
System.out.println(this.name+"学生正在学习" + book);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user