java - 如何使用 String 方法打印对象值

标签 java string abstract-class

我有一个像这样的抽象类

public abstract class Temperature

{

private float value;
public Temperature(float v)
{
    value = v;
}

public final float getValue()
{
    return value;
}

public abstract Temperature toCelsius();
public abstract Temperature toFahrenheit();
public abstract Temperature toKelvin();
}

然后我有扩展这个Temperature类的类,例如:

 public class Celsius extends Temperature
{
public Celsius(float t)
{
    super(t);
}


public String toString()
{
    return "";
}


@Override
public Temperature toCelsius() {
    // TODO Auto-generated method stub
    return this;
}

public Temperature toKelvin(){
    return new Kelvin(this.getValue() + 273);
}

@Override
public Temperature toFahrenheit() {
    // TODO Auto-generated method stub
    return new Fahrenheit(this.getValue() * 9 / 5 +32);
}

}

main方法创建Celcius的对象

     Temperature inputTemp = null, outputTemp = null;

     inputTemp = new Celsius(temp_val);

     outputTemp = inputTemp.toCelsius();

然后通过调用此方法打印对象

     System.out.println("\n The converted temperature is " + outputTemp.toString() +"\n\n");
    }

我必须在 toString 方法中放入什么才能打印所需的值? this.super.getValue() 不起作用,我有点无能为力。既然我们不会每次都返回相同的对象,那么我们是否必须使用父类(super class)?

最佳答案

如果你使用就足够了:

public String toString()
{
    return Float.toString(this.getValue());
}

关于java - 如何使用 String 方法打印对象值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23058500/

相关文章:

c# - 在指定字符串后添加字符串

java - 我的字符串可以保存或使用多少字符数据?

c# - 如何在字符串值的中间添加空格?

c++ - 多态性 - 适当使用指向纯抽象类的指针?

c++ - 如何在抽象类中声明重载运算符并在派生的非抽象类中覆盖它?

java - 使用 ObjectInputStream 从文件中读取对象?类未找到异常

java - 使用 Windows 服务调用使用 JNI 和 LoadLibrary 的 Java 程序的问题

Java 接口(interface)\抽象类限制

java - Apache httpclient 软件包显示缺少许多其他软件包

java - 将项目添加到 ArrayList 并分隔