2天前,我开始学习面向对象的Java。我不是IT或ComSci的学生/研究生。我只是在学习新东西。
我了解了Java中的对象。因此,我知道创建对象的语法是:
MyObject object = new MyObject();
我有点想这个对象可以像Java方法一样命名。但是,我不知道如何命名MyObject。
我在下面有这个简单的代码:
import javax.swing.JFrame;
public class sample extends JFrame
{
public static void main(String[] args)
{
sample sample = new sample();
sample.setVisible(true);
sample.setSize(300, 200);
sample.setTitle("Simple");
}
}
上面的代码显示我有对象
sample sample = new sample();
,效果很好。如果我将其更改为
JFrame样本=新的JFrame();
它仍然可以正常工作。如果我删除了扩展JFrame 并使用相同的对象,它将仍然有效。如果没有扩展JFrame ,并且我使用对象 sample sample = new sample(); ,那么它将无法正常工作。 最后,这确实让我感到困惑。如果我具有扩展JFrame ,并且将对象更改为 Employee sample = new Employee(); ,那么它将创建一个错误。它说“找不到符号”。
是否有适当的对象命名对象?在哪里应该依靠对象命名?
答案 0 :(得分:0)
由于使用的是extends JFrame
,因此可以使用JFrame
类中的方法-请参见inheritance上的Java文档
如果删除extends JFrame
,则不能使用setVisible
,setSize
或setTitle
,因为它们不是在当前状态下可以访问的任何方法-它们存在于JFrame
类中
使用Employee sample = new Employee();
失败是因为它正在寻找一个名为Employee
的类,并试图在sample
(顺便应该是Sample
)中创建它的对象调用构造函数,但是您的代码中没有Employee
类。
sample sample = new sample();
之所以有效,是因为这是您当前所在的类的名称,即您正在创建它的实例。