Java 为什么应用于此对象的System.out.println打印此短语?
我有两门课,在下面。当我运行TestSimple类时,它会打印出“BlueBlue是蓝色重复的”。该print语句作为Java 为什么应用于此对象的System.out.println打印此短语?,java,oop,Java,Oop,我有两门课,在下面。当我运行TestSimple类时,它会打印出“BlueBlue是蓝色重复的”。该print语句作为System.out.println(item)执行,它是Simple()类的一个实例。我以前从未见过一个对象以短语的形式打印出来,我很难确定为什么会发生这种情况 我看到Simple类中有一个名为toString的方法,调用时应该打印出来,但我没有看到在任何地方调用该方法。这是怎么回事 public class Simple { private String word;
System.out.println(item)
执行,它是Simple()
类的一个实例。我以前从未见过一个对象以短语的形式打印出来,我很难确定为什么会发生这种情况
我看到Simple
类中有一个名为toString
的方法,调用时应该打印出来,但我没有看到在任何地方调用该方法。这是怎么回事
public class Simple {
private String word;
private String phrase;
public Simple(int number, String w) {
word = w;
phrase = mystery(number, w);
}
private String mystery(int num, String s) {
String answer = "";
for (int k=0; k<num; k++) {
answer = answer + s;
}
return answer;
}
public String toString() {
return phrase + " is " + word + " repeated";
}
}
是一个
PrintStream
,(来自链接的Javadoc)首先调用String.valueOf(x)
,以获取打印对象的字符串值,并返回obj.toString()的值。
是一个PrintStream
,(来自链接的Javadoc)首先调用String.valueOf(x)
获取打印对象的字符串值并返回obj的值。toString()
toString()
是在打印对象或以其他方式隐式转换为字符串时br调用的方法。这就是该方法的用途。打印对象时,会隐式调用其toString。toString()
是在打印对象或以其他方式隐式转换为字符串时将br调用的方法。这就是该方法的用途。打印对象时,会隐式调用其toString。
public class TestSimple{
public void print() {
Simple item = new Simple(3, "blue");
System.out.println(item);
}
public static void main(String[] args) {
new TestSimple().print();
}
}