相关疑难解决方法(0)

Java构建会引入开销吗?为什么?

当我们将一种类型的对象转换为另一种类型时会有任何开销吗?或者编译器只解析所有内容并且在运行时没有成本?

这是一般事情,还是有不同的情况?

例如,假设我们有一个Object []数组,其中每个元素可能有不同的类型.但我们总是知道,例如,元素0是一个Double,元素1是一个String.(我知道这是一个错误的设计,但我们假设我必须这样做.)

Java的类型信息是否仍然在运行时保留?或者编译后一切都被遗忘了,如果我们做(Double)元素[0],我们只需跟随指针并将这8个字节解释为double,不管是什么?

我不太清楚Java中的类型是如何完成的.如果您对书籍或文章有任何建议,那么也要感谢.

java performance casting static-typing

95
推荐指数
4
解决办法
4万
查看次数

在Java中使用Casting是否有任何运行时成本?

这两个块之间会有任何性能差异吗?

public void doSomething(Supertype input)
{
    Subtype foo = (Subtype)input;
    foo.methodA();
    foo.methodB();
}
Run Code Online (Sandbox Code Playgroud)

public void doSomething(Supertype input)
{
    ((Subtype)input).methodA();
    ((Subtype)input).methodB();
}
Run Code Online (Sandbox Code Playgroud)

这两者之间的任何其他考虑或建议?

java performance casting

34
推荐指数
2
解决办法
9945
查看次数

为什么我会收到有关Java中"可能丢失精度"的警告?

class Test
{
    public static void main(String[] args)
    {
         short s=2,s1=200,s2;
         s2=s+s1; // error: "possible loss of precision"
         System.out.println(s2);
    } 
}
Run Code Online (Sandbox Code Playgroud)

为什么将短路添加两个短路的结果分配给编译错误?

java

3
推荐指数
1
解决办法
2274
查看次数

标签 统计

java ×3

casting ×2

performance ×2

static-typing ×1