学生オブジェクトを作成し、学生オブジェクトの 1 つの宣言されていない専攻の値を変更できるマルチクラス プログラムを作成しようとしています。
これが私のコードです:
StudentApp.cs
:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PA04CoddR
{
class StudentApp
{
public void Main()
{
DisplayTitle();
Student firstStudent = new Student("Robert", "Codd");
DisplayInfo(firstStudent);
Student secondStudent = new Student("Alexander", "Clemens", "FIN");
DisplayInfo(secondStudent);
GetMajor(firstStudent);
DisplayInfo(firstStudent);
TerminateProgram();
}
public void DisplayTitle()
{
Console.WriteLine("Programming Assignment 4 - Creating a Class - Robert S. Codd");
Console.WriteLine();
Console.WriteLine("____________________________________________________________");
}
public void DisplayInfo(Student newStudent)
{
Console.WriteLine("Frist Name: " + newStudent.GetFirstName);
Console.WriteLine("Last Name: " + newStudent.GetLastName);
Console.WriteLine("Major: " + newStudent.GetMajor);
}
public void GetMajor(Student newStudent)
{
Console.WriteLine("\tHello {0} {1}", newStudent.GetFirstName, newStudent.GetLastName);
Console.WriteLine("\tPlease enter your major: ");
string majorIn = Console.ReadLine();
Console.WriteLine();
newStudent.SetMajor(majorIn);
}
public void TerminateProgram()
{
Console.WriteLine("___________________________________________________________");
Console.WriteLine("PRESS ANY KEY TO TERMINATE...");
Console.Read();
}
}
}
Student.CS
:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PA04CoddR
{
class Student
{
private string firstName;
private string lastName;
private string major;
public Student()
{
}
public Student(string firstName, string lastName)
{
firstName = GetFirstName;
lastName = GetLastName;
major = "Undeclared";
}
public Student(string firstName, string lastName, string major)
{
firstName = GetFirstName;
lastName = GetLastName;
major = GetMajor;
}
public string GetFirstName
{
get
{
return firstName;
}
set
{
firstName = value;
}
}
public string GetLastName
{
get
{
return lastName;
}
set
{
lastName = value;
}
}
public string GetMajor
{
get
{
return major;
}
set
{
major = value;
}
}
public string SetMajor(string majorIn)
{
major = majorIn;
return majorIn;
}
}
}
IDE にエラーが表示されたり表示されたりすることはありませんが、プログラムをコンパイルしようとするとすぐに、「エントリ ポイントに適した静的な「メイン」メソッドが含まれていません」というエラーが返されます。
ここや他のオンライン リソースで調査を行ったところ、メイン メソッドを静的に変更するなど、問題を解決するのに有望と思われることがいくつか見つかりましたが、試してみるとすぐに、メイン メソッドのすべてが構文エラーを返しています。非静的フィールド、メソッド、またはプロパティにはオブジェクト参照が必要です」
どんな助けでも大歓迎です。私はプログラマーを学んでいるので、それはかなり単純なものであり、概念を完全には理解していません。