私はJavaで例を作成しましたが、他の(すべて?)言語で機能すると思います(テストされていません)。
2つのファイルがあります。まず、M.java
:
public class MType {
XType x;
MType() {x = null;}
}
次に、別のファイル(同じディレクトリ内)XType.java
、:
public class XType {
MType m;
public XType(MType m) {this.m = m;}
}
プログラミングは悪いですが、実行するjavac XType
とコンパイルされます。必要な場合でもコンパイルさMType
れXType
ます。しかし...MType
必要XType
...それはどのように機能しますか?コンパイラは何が起こっているかをどのように知るのですか?
コンパイラー(javacまたはあなたが知っている他のコンパイラー)がその状況をどのように管理するかを知りたいのですが、それを回避する方法ではありません。
私はプリコンパイラを書いているので、その状況を管理したいので、質問しています。