Java を深く勉強したことはありません。最近、私はそれを完全に理解していないので、調査したい行動に対処しなければなりませんでした.
メインパッケージがパッケージ b をインポートする必要がない理由を説明してもらえますか? aaメソッドの引数はB型ですが。
このコードは正しく動作します。
この特定のケースは、インライン依存性注入と見なすことができますか?
package c;
import b.*;
public class C {
B b=new B();
public B cc(){
return b;
}
}
package a;
import b.*;
public class A {
public void aa(B b) {}
}
package b;
public class B {}
import a.A;
import c.C;
public class Test {
public static void main(String[] args) {
A a = new A();
C c = new C();
a.aa(c.cc());
System.out.print("Test");
}
}