作者在 2017-07-14 14:14:47 发布以下内容
关键字:toString 、this、
toString
1.在java中,所有对象都有toString()这个方法。
2.创建类时没有定义toString()方法输出对象时会输出对象的哈希码值
3.它通常只是为了方便输出,比System.out.println(xx),括号里面的“xx”如果不是String类型的话,就自动调用xx的toString()方法
4.他只是Sun公司开发java的时候为了方便所有的类的字符串操作 而特意加入的一个方法
toString()方法就是把对象转换成String类型,转换的算法根据类型和实际需要而定。
class Cat{
String name;
int age;
//方法的重写
public String toString(){
return "我的名字"+name+",我的年龄"+age;
}
}
public class test{
public static void main(String[]args){
String name = new String("你好");
System.out.println(name);
Cat one = new Cat();
System.out.println(one);//等价于System.out.println(one.toString()); 因为默认调用
}
}
this
1.在类的方法定义中使用this关键字代表使用该方法的对象的引用
2.有时候使用this可以处理方法中成员变量和参数重名的问题
3.this可以看做一个变量,他的值就是当前对象的引用
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String toString() { return name; } }public class Test { public static void main(String[] args) { Person p = new Person("Jack", 20); System.out.println(p);// 这时会输出"Jack". }//这个时候对象p在使用person这个方法,所以这个this就是恒等于“引用p”也就是p.name();