私は C# を学んでいますが、それ以上進むと問題が見つかりました。私は次のようなコードを持っています:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main()
{
Planeta Z1 = new Ziemia("matka Ziemia");
Z1.Nazwa();
System.Console.ReadKey();
}
}
public abstract class Planeta
{
protected string nazwaPlanety;
public Planeta() { nazwaPlanety = " "; }
public Planeta(string s) { nazwaPlanety = s; }
public abstract void Nazwa();
}
public class Ziemia: Planeta
{
public Ziemia() { }
public Ziemia(string s) : base(s){ }
public override void Nazwa()
{
System.Console.WriteLine(this.nazwaPlanety);
}
}
}
しかし、2つのエラーが見つかりました:
エラー 1 'ConsoleApplication1.Ziemia' は、継承された抽象メンバー 'ConsoleApplication1.Planeta.Nazwa()' を実装していません 行: 24 列: 18
エラー 2 'ConsoleApplication1.Ziemia.Nazwa(string)': オーバーライドする適切なメソッドが見つかりません 行: 28 列: 30
なぜこのようなエラーが発生するのですか?
それらを回避し、プログラムを適切に動作させる方法は?
また: 2 番目のエラーで、関数が受け取る引数のタイプとして"string" 'ConsoleApplication1.Ziemia.Nazwa( string )'が表示される理由がわかりません。