【发布时间】:2020-02-25 18:23:43
【问题描述】:
这是我的代码有什么错误? 以及如何解决它。 如前所述,构造函数是一种方法,它不包含任何返回类型。如果我们想在c#中创建一个构造函数,那么我们需要创建一个名称与类名相同的方法。
class Program
{
public static int number;
public static string name;
public static float salary = 20000;
static void Main(string[] args)
{
Console.WriteLine("Welcome");
Console.WriteLine("Enter Your Name: ");
name = Console.ReadLine();
Employee System = new Employee("Sameed", 20000f);
Bonus b1 = new Bonus();
//b1.Employee(name, salary);
b1.Salary(salary);
b1.Bonuses();
Display(number);
Display(name,number);
}
static void Display(int n)
{
Console.WriteLine("Employee Number is: " +n);
}
static void Display(string name, int num)
{
Console.WriteLine("Congratulations {0}, your Employee number has been generated {1}",name,num);
}
}
public class Employee
{
public Employee(string n, float s)
{
Console.WriteLine("Hello Mr. {0}, Your Salary is {1}", n, s);
}
}
public class Director:Employee
{
public void Salary(float s)
{
Console.WriteLine("Your Salary is: " + s);
}
}
public class Bonus:Director
{
public void Bonuses()
{
int bonus = 40000;
Console.WriteLine("Your Bonus is: " + bonus);
}
}
错误:Employee' 不包含采用 0 个参数的构造函数
【问题讨论】:
-
类主管需要有一个您编写的构造函数。此构造函数需要调用 base(n,s),它是员工的构造函数。您可以将参数从 director 构造函数传递到 base,也可以将硬编码值提供给 base。满足您将正确数据提供给员工构造函数的需求。
标签: c# .net class constructor