我在Eclipse中尝试了以下内容:
if (false) {}:警告'死码'while (false) {}:编译错误'无法访问的代码'我想知道这种差异是否存在真正的"原因".我已经发现了......
...但为什么不允许while (false)相同的调试目的?
为我的OCA Java SE 7程序员学习考试,所以新手问题.我有一个我不明白的例子问题.以下代码编译,但在运行时给出ClassCastException:
interface Roamable {
}
class Phone {
}
public class Tablet extends Phone implements Roamable {
public static void main(String... args) {
Roamable var = (Roamable) new Phone();
}
}
Run Code Online (Sandbox Code Playgroud)
当我改变Roamable var = (Roamable) new Phone();成Roamable var = (Roamable) new String();我得到一个编译错误的时候了.
两个问题:
new Phone(),但不编译new String()?