Java - 每个文件规则由一个类混淆

时间:2010-12-25 20:42:48

标签: java

Java中每个文件规则的一个类让我有点困惑。我正在编写一个Android应用程序,并试图实现这个问题的接受答案:

Common class for AsyncTask in Android?

调用接口定义,类A实现,类B接受作为其构造函数的参数。

所以我需要一个A.java和一个B.java,但界面在哪里?它本身需要一个单独的java文件吗?我是否必须在A和B内定义它?如果不是如何导入它?

此外,我将有大约10个不同的AsyncTask类,但我不想为每个类创建一个新文件。你会推荐什么?有没有办法将所有10个类放在一个文件中?或者我应该在类中创建一个大的if / then块并传递一个参数,告诉它我想要它执行的10个不同任务中的哪一个?

2 个答案:

答案 0 :(得分:2)

您必须将其放在AsyncTaskCompleteListener.java中。如果它在同一个包中,则无需导入它。如果在不同的包中,您可以使用import语句导入它。

我建议在继续之前阅读java tutorial

对于10多个类 - 您可以在另一个类中使用public static class。这可行,但每个类都有一个文件是你应该习惯的 - 这是首选的选项。仅当内部类与其拥有的类存在逻辑关联时,才使用内部静态类。

答案 1 :(得分:2)

  

界面在哪里?可以   需要一个单独的java文件吗?

是。您可以使接口和/或其中一个类非公开,但是您无法在包外使用它们。

  

此外,我将有大约10种不同   AsyncTask类,但我不想   打扰为每个人创建一个新文件   之一。

为什么不呢?每个文件有一个类或接口是通常在Java中完成的。我建议接受这个惯例,因为试图反对它将导致你无休止的问题。