2017-12-01 5 views
-15

私はコードを与えられた後、コードの後ろに置く方向のセットを持っています。C#で別のクラスを追加するには

指示: 割り当てを完了するには、GrandParentクラスと呼ばれる別のクラスを追加して、親クラスの のように見せてください。ただし、明らかにGrandParentと呼ばれています。

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace Assignment14 
{ 
    public class ParentClass 
    { 
     public ParentClass() 
     { 
      Console.WriteLine("Parent Constructor."); 
     } 
    } 

     public class ChildClass : ParentClass 
     { 
      public ChildClass() 
      { 
       Console.WriteLine("Child Constructor."); 
      } 

     public static void Main() 
     { 
      ChildClass child = new ChildClass(); 
      Console.Write("Hit any key to close"); Console.ReadKey(true); 
     } 
    } 
} 
+0

時間がなくても何も来ません。 –

+5

'C#の基礎とクラスセクションに焦点を当ててgoogleでGoogle検索を行い、単一の名前空間内に複数のクラスを作成する方法 – MethodMan

+6

自分で問題を見つけ出す時間がなければ、おそらく開発者はあなたにとって適切な専門的選択でした。世界はもっと怠け者で無教養のプログラマを必要としません。 – silkfire

答えて

0

ここで仕事inheretanceどのように私はC#での継承についてお教えしますリンクを提供しています。コンソールAPIを使用していますが、WindowsフォームAPIを使用しています。このリンクは、抽象メソッドと仮想メソッド、抽象基本クラス、およびインターフェイスについて理解するのに役立ちます。

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/inheritance

継承は、一緒にカプセル化および多型と、オブジェクト指向プログラミングの三つの主な特性の一つです。継承を使用すると、他のクラスで定義されている動作を再利用、拡張、変更する新しいクラスを作成できます。メンバーが継承されるクラスは基本クラスと呼ばれ、そのメンバーを継承するクラスは派生クラスと呼ばれます。派生クラスは直接基底クラスを1つしか持てません。しかし、継承は推移的です。 ClassCがClassBから派生し、ClassBがClassAから派生する場合、ClassCはClassBおよびClassAで宣言されたメンバーを継承します。

概念的には、派生クラスは基本クラスの特殊化です。たとえば、基本クラスがAnimalの場合、Mammalという名前の派生クラスとReptileという名前の派生クラスがあります。哺乳動物は動物、爬虫類は動物ですが、それぞれの派生クラスは基本クラスの異なる特殊化を表します。

他のクラスから派生するクラスを定義すると、その派生クラスはコンストラクタとファイナライザを除いて、基本クラスのすべてのメンバーを暗黙的に取得します。これにより、派生クラスは、再実装することなく、ベースクラスのコードを再利用することができます。派生クラスでは、さらにメンバーを追加できます。このようにして、派生クラスは基本クラスの機能を拡張します。

次の図は、一部のビジネスプロセスにおける作業項目を表すWorkItemクラスを示しています。すべてのクラスと同様に、System.Objectから派生し、すべてのメソッドを継承します。 WorkItemは独自のメンバーを5人追加します。コンストラクタは継承されないため、これらにはコンストラクタが含まれます。クラスChangeRequestはWorkItemを継承し、特定の種類の作業項目を表します。 ChangeRequestは、WorkItemおよびObjectから継承したメンバにさらに2つのメンバを追加します。独自のコンストラクターを追加する必要があります。また、originalItemIDも追加します。プロパティoriginalItemIDを使用すると、ChangeRequestインスタンスを、変更要求が適用される元のWorkItemに関連付けることができます。これらの概念の

Understand Inheritance

すべて、再利用する新しいクラスを作成することができます拡張し、他のクラスで定義されている動作を変更することが不可欠です。

幸運を祈る!

+0

あなたは正しいです。私はもっ​​と助けるために私の答えを更新しました。私はこれが十分であり、概念を明確にする答えだと思います。 –

+0

私の友人に感謝します。 –

+0

ようこそ。思ったかもしれない。あなたのプロジェクトに幸運。 –

-2
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace Assignment14 
{ 
    public class GrandParentClass 
    { 
     public GrandParentClass() 
     { 
      Console.WriteLine("Grandparent Constructor."); 
     } 
    } 

    public class ParentClass : GrandParentClass 
    { 
     public ParentClass() 
     { 
      Console.WriteLine("Parent Constructor."); 
     } 
    } 

    public class ChildClass : ParentClass 
    { 
     public ChildClass() 
     { 
      Console.WriteLine("Child Constructor."); 
     } 
     public static void Main() 
     { 
      ChildClass child = new ChildClass(); 
      Console.Write("Hit any key to close"); 
      Console.ReadKey(true); 
     } 
    } 
} 
+1

コメントが必要 –

+0

私は仲間の学生として、将来の競争を排除するためにこのソリューションを投稿しています(私のスクールメイトが私からコピーを始めたら、決して止めません。とにかく答えはかなり自明で、匿名のユーザーとして、私はポイントを気にしません。 – user9041343

+0

あなたの答えのような音は、基本的な競争でさえ、答えではありません.. – MethodMan

関連する問題