//未使用this前***************************************************************
package demo;
//定义一个类
public class this使用 {
//定义成员变量
String name ;
//定义成员方法
public void wenHao(String person){
System.out.println(person+"你好,"+"我是"+name);
}
}
package demo;
//定义一个对象
public class this对象 {
public static void main(String[] args){
this使用 th = new this使用() ;
th.name = "马云" ;
th.wenHao("马化腾");//输出:马化腾你好,我是马云
}
}
//上面正常输出,如果将成员函数形参改成name怎么办?********************************************
//wenHao方法中的打印遵循就近原则,传进去的是局部变量name=“马化腾”;
package demo;
public class this使用 {
//定义成员变量
String name ;
//定义成员方法
public void wenHao(String name){
System.out.println(name+"你好,"+"我是"+name);
}
}
package demo;
public class this对象 {
public static void main(String[] args){
this使用 th = new this使用() ;
th.name = "马云" ;
th.wenHao("马化腾");//输出:马化腾你好,我是马化腾
}
}
//如果想正常输出:使用this*********************************************************
package demo;
public class this使用 {
//定义成员变量
String name ;
//定义成员方法
public void wenHao(String name){
System.out.println(name+"你好,"+"我是"+this.name);
//打印this内存地址
System.out.println("this地址:"+this);//this地址:demo.this使用@12edcd21
}
}
package demo;
public class this对象 {
public static void main(String[] args){
this使用 th = new this使用() ;
th.name = "马云" ;
th.wenHao("马化腾");//输出:马化腾你好,我是马云
//打印对象th内存地址
System.out.println("th对象地址:"+th);//th对象地址:demo.this使用@12edcd21
}
}
//this与对象th内存地址相同,即this本质是指向类所定义的那个对象:this.name功能相当于访问"马云";
Java中this-Day02
最新推荐文章于 2024-09-24 10:50:41 发布