だから私はノードクラスを持っていて、まだLinked Listを学んでいないので、それを使うことができません. ノード オブジェクトを作成するには、パラメータを次のようにします。
Node(int numberOfNode, type complex or simpel)
Simpelnodeandと呼ばれるノードの 2 つのサブクラスがあるcomplexNodeため、ノード オブジェクトはそれらのいずれかになります。パラメータを両方のタイプにするにはどうすればよいですか?
だから私はノードクラスを持っていて、まだLinked Listを学んでいないので、それを使うことができません. ノード オブジェクトを作成するには、パラメータを次のようにします。
Node(int numberOfNode, type complex or simpel)
Simpelnodeandと呼ばれるノードの 2 つのサブクラスがあるcomplexNodeため、ノード オブジェクトはそれらのいずれかになります。パラメータを両方のタイプにするにはどうすればよいですか?
継承を使用
public interface Node{
//...
}
public class SimpleNode implements Node{
//...
}
public class ComplexNode implements Node{
//...
}
Constructor次に、次のように追加できます。
public class SimpleNode implements Node{
public SimpleNode(int numberOfNode){
//...
}
}
Node(int numberOfNode, Node node)
SimpleNodeとComplexNodeは両方とも のサブクラスであるためNode、 aSimpleNode は a Nodeであり、 aComplexNode は a Nodeです。したがって、引数 type として使用すると、 aだけでなくNodea も渡すことができます。SimpleNodeComplexNode
Simpelnodeノードを作成しcomplexNodeて拡張する必要があります。
そうすれば、次のことができます:
Node n = new Simpelnode();
また
Node n = new complexNode();
また、 Java継承について読んで、それが何を意味するのかを理解する必要があります
私があなたの質問を理解する限り..
コンストラクターで Node インターフェイスを作成する
Node(int numberOfNode,Object o) またNode(int numberOfNode,Node o)
2つのクラスにSimpleNodeとComplexNodeを実装させる
次のようSimpleNode(int numberOfNode,SimpleNode o) にComplexNode(int numberOfNode,ComplexNode o)