如何通过用户输入创建对象-C#

时间:2018-10-10 16:18:07

标签: c# user-input

我是OOP的初学者,最近开始使用C#进行编码。 (在Visual Studio 2017控制台应用程序中工作。) 在搜索了教程之后,我将在这里尝试我的运气。

我正在尝试制作一个简单的程序,允许用户通过要求他们输入来制作一本(或多本)新的对象书。我知道如何手动创建该类的对象,但不知道如何使用用户输入进行操作。这是我到目前为止的代码:

public class book
{
    //variables
    private string title;
    private string author;
    private string genre;
    private string series;

    //constructor
    public book(string _titel, string _author, string _genre, string _series)
    {
        this.titel = _titel;
        this.author = _author;
        this.genre = _genre;
        this.series = _series;
    }

    //method to ask user for input to create book
    public void createBook()
    {

    }

2 个答案:

答案 0 :(得分:7)

Console.WriteLine("Input Title: ");
var title = Console.ReadLine();
Console.WriteLine("Input Author: "):
var author = Console.ReadLine();
etc..
var book = new Book(title,author etc...)

您将输入作为变量,然后从这些变量构造对象。

答案 1 :(得分:0)

createBook()不应在book类中。从理论上讲,创建您的书是构造函数应该做的。您需要将createBook()放在可以调用构造函数的位置,并使该书存在(并将void更改为book对象)。

但是如果您在主目录(或您想要的任何地方)中将其保留为空,则需要致电

createBook(); // although you can't do much with it as it returns a void

并将您的函数定义为

void createBook(){
    // get input for _titel, _author, _genre, _series
    Book = book(_titel, _author, _genre, _series);
    console.writeline("book created! such a shame all its a properties are private, because I'd really like to output the title or something.")
}