java println 用法_java,成员变量与方法参数或自定义的局部变量同名要用this,system.out.println(this)用法,...

class A {

int num;

String name;

//void A(int p_num,String p_name){ //TTTT///参数名和成员变量名不同,可以这样做;

//num=p_num;

//name=p_name;

//}

//void A(int p_num,String p_name){ //TTTT///参数名和成员变量名不同,可以这样做;

//this.num=p_num;

//this.name=p_name;

//}

void A(int num,String name){

//num=num;///The assignment to variable num has no effect

//name=name;///fff //参数名和成员变量名相同,不可以这样做;

this.num=num; TTT this显式的指明当前对象

this.name=name;必须要用this才对

}

public void run() {

System.out.println(this);

}

public String toString() {

return "hello";

}

}

public class Test {

public static void main(String[] args) {

// TODO Auto-generated method stub

A a = new A();

a.run();this调用A类中的toString方法

}

}

//输出 hello

要是把toString 注释掉:

class A {

int num;

String name;

//void A(int p_num,String p_name){ //TTTT///参数名和成员变量名不同,可以这样做;

//num=p_num;

//name=p_name;

//}

//void A(int p_num,String p_name){ //TTTT///参数名和成员变量名不同,可以这样做;

//this.num=p_num;

//this.name=p_name;

//}

void A(int num,String name){

//num=num;///The assignment to variable num has no effect

//name=name;///fff //参数名和成员变量名相同,不可以这样做;

this.num=num; TTT this显式的指明当前对象

this.name=name;必须要用this才对

}

public void run() {

System.out.println(this);

}

// public String toString() {

// return "hello";

// }

}

public class Test {

public static void main(String[] args) {

// TODO Auto-generated method stub

A a = new A();

a.run();this调用A类中的toString方法

}

}

//输出 A@6c10a234

this 是这个类的引用,  比如说

那么System.out.println(this)将打印A类自身引用的toString方法,如列,打印hello;   如果自身没有实现,则打印的是父类Object的toString方法;getClass().getName() + "@" + Integer.toHexString(hashCode());  打印的是“类名@hashcode”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值