在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