タイトルで質問されているように、long 値から double 値を減算すると、内部的にはどうなりますか? 型 double または long の結果であり、この動作は Java 仕様でも指定されていますか、それともこの動作は jvm 固有ですか?
だから私は自分のjvmが何をするかを自分自身でテストできることを知っています:
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
double b = 1000;
long a = 1000;
Object c = a - b;
Class cls = c.getClass();
System.out.println("The type of the object is: " + cls.getName());
}
}
出力:
The type of the object is: java.lang.Double
しかし、これはどこかに指定されていますか?それとも、私が使用したjvmに固有のものですか?