C# C-缺少组件/参考,面向对象编程

C# C-缺少组件/参考,面向对象编程,c#,C#,我似乎找不到修复代码的错误。我得到了一个tester类,并被告知创建正确运行测试程序所需的类。以下是我遇到问题的代码: 测试级 教师班 大学班 只有测试人员显示错误,是我引用的名称空间有问题吗?您需要更改createFaculty以返回Faculty的实例 public Faculty createFaculty(String faculty) { numOfFaculties++; return new Faculty(faculty); } 您还需要在测试项目中创建一个Un

我似乎找不到修复代码的错误。我得到了一个tester类,并被告知创建正确运行测试程序所需的类。以下是我遇到问题的代码:

测试级

教师班

大学班


只有测试人员显示错误,是我引用的名称空间有问题吗?

您需要更改createFaculty以返回Faculty的实例

public Faculty createFaculty(String faculty)
{
    numOfFaculties++;
    return new Faculty(faculty);
}
您还需要在测试项目中创建一个University实例;createFaculty不是静态的

static void Main(string[] args)
{
    var instance = new University();
    var scienceFac = instance.createFaculty("Science");
}

除了其他人在评论中提到的问题外:

大学课堂上的学生只记得教师的人数,而不记得教师本身

不需要将整型字段初始化为0

不需要有一个int numofaculties字段和一个int numberofaculties方法——这就是属性的用途:public int numberofaculties{get;private set;}会很好地工作

我建议你的大学课程应该是这样的:

public class University
{
    private readonly List<Faculty> _faculties = new List<Faculty>();
    public List<Faculty> Faculties { get { return _faculties; } }

    public Faculty CreateFaculty(string facultyName)
    {
        var faculty = new Faculty(facultyName);
        _faculties.Add(faculty);
        return faculty;
    }

    public int NumberOfFaculties { get { return _faculties.Count; } }
}

叹气拿出那条不同的线。利用学校;显示错误-错误到底是什么?为什么在不使用结果的情况下调用构造函数?此外,您调用的createFaculty不遵循.NET命名约定,顺便说一句,就好像它是一个静态方法一样。new Facultyfaculty;//@霍根什么都不做
public Faculty createFaculty(String faculty)
{
    numOfFaculties++;
    return new Faculty(faculty);
}
static void Main(string[] args)
{
    var instance = new University();
    var scienceFac = instance.createFaculty("Science");
}
public class University
{
    private readonly List<Faculty> _faculties = new List<Faculty>();
    public List<Faculty> Faculties { get { return _faculties; } }

    public Faculty CreateFaculty(string facultyName)
    {
        var faculty = new Faculty(facultyName);
        _faculties.Add(faculty);
        return faculty;
    }

    public int NumberOfFaculties { get { return _faculties.Count; } }
}
University uni = new University();
Faculty scienceFac = uni.CreateFaculty("Science");