我无法在以下代码中创建java.awt.Rectangle
对象。但是,我仍然可以创建Rectangle对象...
请解释一下为什么会这样?
package examples;
import java.awt.*;
public class Rectangle {
public static void main(String[] args) {
java.awt.Rectangle rect = new Rectangle();
System.out.println(rect.toString());
}
}
答案 0 :(得分:7)
请解释为什么会这样?
您正在创建 Rectangle
类的实例,但尝试将其分配给java.awt.Rectangle
变量。您可以将其更改为:
java.awt.Rectangle rect = new java.awt.Rectangle();
当然,您应该尽可能地避免这种命名冲突,但是您可以始终使用完全限定名称,只要该类在包中即可。 (在默认包中,事情变得棘手,你应该避免。)
答案 1 :(得分:0)
您的班级Rectangle
会隐藏包Rectangle
中的班级java.awt
。您需要完全限定的名称:
java.awt.Rectangle rect = new java.awt.Rectangle();
答案 2 :(得分:0)
喜欢
package examples;
import java.awt.*;
public class Rectangle {
public static void main(String[] args) {
java.awt.Rectangle rect = new java.awt.Rectangle();
System.out.println(rect.toString());
}
}