我无法让main读取我的构造函数.它一直说我的类不包含一个带有3个参数的构造函数.这是公开的.我不知道我做错了什么,我在成功之前做过这个,这是我用来学习测试的练习题.
public class Actor
{
//attributes
private string name;
private int awardsNum;
private bool SAGMember;
//property
private string name
{
get { return name; }
set { name = value; }
}
//constructor
public Actor(string Name, int AwardsNum, bool SAGMember)
{
this.name = Name;
this.awardsNum = AwardsNum ++;
this.SAGMember = false;
}
public Actor()
{
this.name = "Bob Smith";
this.awardsNum = 0 ;
this.SAGMember = false;
}
public override string ToString ()
{
return string.Format ("Actor: " + name + "\n" + " Number of Awards: " + awardsNum + "\n"+ "SAG Member: " + SAGMember);
}
}
public static void Main (string[] args)
{
Actor a1 = new Actor ("Dustin Hoffman", 0 , true);
Console.WriteLine (a1);
Actor a2 = new Actor ();
Console.WriteLine (a2);
}
Run Code Online (Sandbox Code Playgroud)
我认为你的Actor类没有因为这行而编译:
set { name = Dustin Hoffman; }
Run Code Online (Sandbox Code Playgroud)
并且JIT错误只是混乱,因为结果是如何破坏你的代码.
也:
Console.WriteLine("The Crowd applauds for " + name "with" + awardsNum "awards" );
Run Code Online (Sandbox Code Playgroud)
不能简单地坐在无人的土地上,它必须在某种方法或构造中.
根据下面的评论:您将name声明为具有相同大小写的字段和Property,这是无效的.它被宣布为SAGMember,但引用了SAGMEMBER.
您确实意识到Visual Studio中存在错误窗口,对吧?