这个类实例化发生了什么

时间:2010-09-21 16:39:30

标签: java

我试图了解以下代码如何与包模板中的其他两个.java文件相关联。在main方法中有三个类被实例化?如果所有内容都在包模板中,为什么要将它们放在main方法中?这些都将Driver类作为超类吗?最后,除了工作“new”之外,三个类中的任何单词都被实例化为java特定单词。感谢您对此的任何见解。我试图了解一个项目是如何组合在一起的,这样我就可以编写一个递归算法来搜索文件。谢谢 还有一个问题我想确保我理解为什么在DirectoryLister的参数中有gui .... DirectoryLister(gui); ???它是否需要在主类中存在,以便它可以从gui ??

调用方法
package template;

import javax.swing.*;

public class Driver
{
  public static void main(String[] args)
   {
       GUI gui = new GUI();
       DirectoryLister dl = new DirectoryLister(gui);
       gui.registerModel(dl);
   }
}

2 个答案:

答案 0 :(得分:2)

很多问题:

  • 在main方法中有三个类被实例化?

不,只有两个是明确实例化的:GUIDirectoryLister

  • 如果所有内容都在包模板中,为什么要将它们放在main方法中?

main方法只是程序的入口点。您可能会或可能不会将所有内容放在main方法中。请记住,这是您的程序将开始执行的地方。

  • 这些都将Driver类作为超类吗?

如果您指的是GUIDirectoryLister,则答案为。一点也不。他们是完全独立的。

  • 除了工作“new”之外,三个类中的任何单词是否都是实例化的Java特定单词?

没有。他们都不是。

  • 我想确保我理解为什么在DirectoryLister的参数中有gui .... DirectoryLister(gui); ???它是否需要在主类中存在,以便它可以从gui ??
  • 调用方法

DirectoryLister可能需要在其中一个构造函数中使用GUI实例。通过调用dl构造函数,您构建 gui对象DirectoryLister(GUI g)元素。

-

此外,请注意,您标记的问题与 JavaME 无关。这只是一个简单的 Java 问题。您将不会在此处使用 JavaME ,因为您要导入 JavaME 版本无法使用的javax.swing.*

答案 1 :(得分:-1)

你需要学习基本的java。您只实例化了两个类。