(MATLAB内)A
& B
です。クラスA
& B
から作成されたオブジェクトを両方のプロパティとして割り当てたいA
& B
私のコードは、このプロパティとして他のクラスを含むクラス
classdef A < handle
properties
container
end
methods
function object = A()
end
end
end
のように見え、この
classdef B < handle
properties
container
end
methods
function object = B()
end
end
end
は、その後、私は
object_from_class_A.container = object_from_class_A
のように、
A
&
B
両方のクラス
A
&
B
から
container
-propertyへのクラスから両方のオブジェクトを割り当てています
および
object_from_class_A.container = object_from_class_B
これは、異なるクラスのオブジェクトを格納するために同じ変数/プロパティを使用することを意味します。これは悪いデザインの選択ですか?これを避けるにはどうすればいいですか?私は、異なるオブジェクト間の関係を構築しようとしているので、オブジェクトをお互いに割り当てようとしています。
P.S.私はOOPを初めて利用しています。より良い説明のための
編集:
クラスA
& B
は根本的に異なっていて、お互いから継承/接続しないでください。オブジェクトcity
にはオブジェクトstreet
とオブジェクトhouse
が含まれ、オブジェクトhouse
にはオブジェクトstreet
が接続されています。したがって、street
とhouse
はcity
から継承する必要がありますが、street
とhouse
は互いに知っている必要があります。しかし、私はcity
からすべて継承するが、お互いの間で他のものを共有/継承しない多くのオブジェクト(標識、車、人、猫、犬など)の関係をどのように認識するべきですか?
は、例えば、私はcar
street
オブジェクトbeween接続を確立したいので、私は特定のstreet
-objectに見れば、私はstreet
オブジェクトに特定のオブジェクトcar1
、car2
、car3
を割り当てます。
両方のクラスのオブジェクトを同じ変数に割り当てる場合は、2つのクラスの違いは何ですか? 2つのクラスはスーパークラスに関連していますか(または関連づけられていますか?)、または基本的に異なる2つのクラスですが、情報を共有する必要がありますか?それは最高のデザインではありませんが、クラスそのものに関する詳しい情報が必要だと思います。 – beaker
クラスAとBは根本的に異なっています(私はもっと具体的にすべきです...)。 – Lemonbonbon
"street"と "house"は 'city'から継承する必要があります。同意しません。これらの3つの項目は基本的に異なるエンティティですが、関連しています。私はそれらに独自のクラスを作って、 'city'にOOPの用語で' 'street''配列と' 'house''配列を含めるように言います。 – TroyHaskin