Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#三个相互作用的类_C#_Class - Fatal编程技术网

C#三个相互作用的类

C#三个相互作用的类,c#,class,C#,Class,我基本上是个初学者,所以请容忍我。我必须创建3个类,其中一个是main,另外两个是Library类和Book类 我已收到此代码,无法更改它 public static void Main (string[] args) { Library lib = new Library (); lib.AddBook ("C# programming", "Gesick", 4); lib.AddBook ("java programming", "Roth", 2); lib.A

我基本上是个初学者,所以请容忍我。我必须创建3个类,其中一个是main,另外两个是Library类和Book类

我已收到此代码,无法更改它

public static void Main (string[] args)
{
   Library lib = new Library ();

   lib.AddBook ("C# programming", "Gesick", 4);
   lib.AddBook ("java programming", "Roth", 2);
   lib.AddBook ("C++ programming", "Franklin", 1);
   lib.AddBook ("unity programming", "Preston", 3);
   lib.AddBook ("graphics & multimedia", "Chastine", 5);
}
这就是我正在写的代码

class Library
{
    List<string> library = new List<string>();

    public string AddBook(string Name, string Author, int Id)
    {
        Book.name = Name;
        Book.author = Author;
        Book.id = Id;
    }
}

class Book
{
    public string name;
    public string author;
    public int id;
}
类库
{
列表库=新列表();
公共字符串AddBook(字符串名称、字符串作者、int-Id)
{
Book.name=名称;
Book.author=作者;
Book.id=id;
}
}
课堂用书
{
公共字符串名称;
公共字符串作者;
公共int id;
}

这显然是不完整的,我确实想尝试自己完成大部分。我的第一个问题是我是否在正确的轨道上。我现在的下一个问题是,我将如何打印给我的书?我还没有创建AddBook方法,但是添加给我的内容然后打印这些信息会是什么样子呢?

你就快到了。在使用图书对象之前,必须使用
new
关键字创建图书对象。将类视为对象模板。它不是对象本身。要接受图书条目,您的图书馆列表必须是
图书
类型

class Library
{
    List<Book> library = new List<Book>();

    public void AddBook(string Name, string Author, int Id)
    {
        Book book = new Book();
        book.name = Name;
        book.author = Author;
        book.id = Id;
        library.Add(book);
    }
}
请注意,C#标识符区分大小写。属性名、类型名(类名)和方法名通常使用(大写首字母),字段、方法参数和局部变量通常使用驼峰大小写(小写首字母)。一些程序员喜欢在字段名中加下划线(例如
\u name

C#已经创建了一个隐藏的支持字段,并自动执行“管道”操作。你可以简单地写:

public string Name { get; set; }

假设您已经在
图书
类中使用了属性,也可以使用来初始化图书对象

public void AddBook(string name, string author, int id)
{
    Book book = new Book{
        Name = name,
        Author = author,
        Id = id
    };
    library.Add(book);
}

关于你的第二个问题:如何印刷书籍

您可以使用循环遍历图书列表


如果您的应用程序是控制台应用程序,则可以使用
console.WriteLine
方法进行此操作。

您就快到了。在使用图书对象之前,必须使用
new
关键字创建图书对象。将类视为对象模板。它不是对象本身。要接受图书条目,您的图书馆列表必须是
图书
类型

class Library
{
    List<Book> library = new List<Book>();

    public void AddBook(string Name, string Author, int Id)
    {
        Book book = new Book();
        book.name = Name;
        book.author = Author;
        book.id = Id;
        library.Add(book);
    }
}
请注意,C#标识符区分大小写。属性名、类型名(类名)和方法名通常使用(大写首字母),字段、方法参数和局部变量通常使用驼峰大小写(小写首字母)。一些程序员喜欢在字段名中加下划线(例如
\u name

C#已经创建了一个隐藏的支持字段,并自动执行“管道”操作。你可以简单地写:

public string Name { get; set; }

假设您已经在
图书
类中使用了属性,也可以使用来初始化图书对象

public void AddBook(string name, string author, int id)
{
    Book book = new Book{
        Name = name,
        Author = author,
        Id = id
    };
    library.Add(book);
}

关于你的第二个问题:如何印刷书籍

您可以使用循环遍历图书列表


如果您的应用程序是控制台应用程序,则可以使用
console.WriteLine
方法进行此操作。

您的库应该是
List
而不是
List
。您的
AddBook
方法应该创建一本书并将其添加到库中您的库应该是
List
而不是
List
。您的
AddBook
方法应该创建一本书并将其添加到库中。如果方法签名提供了
string
返回,您必须返回
string
@Eser…甚至是一个定时面试问题谢谢!我应该从main中生成的菜单中打印出来。我知道我应该使用foreach循环,但既然main与Library是不同的类,我该如何引用该列表呢?请向
类添加一个打印方法!这样您就可以编写
lib.Print()
在你的
Main
类中。如果方法签名提供了一个
字符串
返回,你必须返回一个
字符串
@Eser…甚至一个定时面试问题谢谢!我应该从main中生成的菜单中打印出来。我知道我应该使用foreach循环,但既然main与Library是不同的类,我该如何引用该列表呢?请向
类添加一个打印方法!这样您就可以编写
lib.Print()Main
类中的code>。