在Ruby中,我经常写许多小类,并且有一个主要类组织小家伙完成工作。我通过书写如何在Java中“需要”邻居类?
require "converter.rb"
require "screenFixer.rb"
.
.
.
位于主类的顶部。我如何在Java中做到这一点?它是“进口”吗?
此外,有人可以为这个问题提出一个更好的标题?
在Ruby中,我经常写许多小类,并且有一个主要类组织小家伙完成工作。我通过书写如何在Java中“需要”邻居类?
require "converter.rb"
require "screenFixer.rb"
.
.
.
位于主类的顶部。我如何在Java中做到这一点?它是“进口”吗?
此外,有人可以为这个问题提出一个更好的标题?
如果你的意思是你要写一些代码将使用另一个类。是的,您需要使用导入语句导入这些类。
即
package com.boo;
import com.foo.Bar;
public class StackOverflow {
private Bar myBar;
}
public class Example {
public Example(IConverter converter, IScreenFixer screenFixer) {
}
}
你不导入你自己在Java * .java文件。相反,你这样做。
javac file1.java file2.java file3.java
java file1
如果这些其他类只是要你的“主”类中使用,有几个选项要考虑不要求任何进口:
如果他们是公共类的其他地方,但是,你的确会需要进口(或完全限定它们无处不在,但那太糟了)。
你应该真的读一点关于面向对象的编程。
你不组织小家伙做大做工。
类包含一些数据并提供方法来以有意义的方式操纵数据。数据通常是其他类的变量,你必须声明你从哪里得到这些。您通过指定import语句来执行此声明。
BTW你应该明确地创建一个类的实例来使用它,即调用类的构造方法
package com.foo;
import com.foo.Bar;
public class StackOverflow {
private Bar myBar;
public StackOverflow() { //this is a constructor of StackOverflow class
myBar = new Bar(); //i'm invoking constructor of Bar class
}
}
如果你写的类都在同一个包你不需要做任何特殊使用它们。如果A类想要B类的服务,那么在A类中,你可以实例化一个B的对象并调用你想要的B的方法。
如果类在不同的包然而,或者如果您正在使用第三方类,那么你就需要一个import语句
import package.ClasName;
在你提到的类文件的顶部。
你回答了quatsion!如果辅助类与Facade类位于同一个包中,我只能说私人bar myBar;我给我一个新酒吧? – Ziggy 2008-10-21 07:48:14