class Jatin{
int value = 9;
public static void main(String args[]){
Jatin obj = new Jatin();
String str = new String("Hello");
System.out.println(obj);//prints unique id why
System.out.println(str);//prints string value why
}
}
如何修改此代码并使用Jatin类的obj对象打印其所有数据成员,即打印出值= 9。 而在String str sop中输出值。为什么?
答案 0 :(得分:1)
您需要创建一个吸气剂以打印它们,或者在打印时直接访问特定字段。
如果您想要一种通过一次调用即可打印所有成员的方法,也可以只实现toString方法。
例如:
class Jatin {
String name = "Jatin";
int value = 9;
@Override
public String toString() {
System.out.println("Name: " + name + "\n" + " value: " + value);
}
}
或者,如果您只需要一个特定值,只需在字段上调用即可。
Jatin obj = new Jatin();
System.out.println(obj.value); // will print the value
之所以只获得唯一的哈希,是因为您没有toString()
答案 1 :(得分:1)
直接打印类的实例会返回该对象的 className @ hashcode
如果需要访问对象的属性,则需要使用点运算符访问它们。
在您的情况下,obj.value
即System.out.println(obj.value);