Как реализовать программно иерархию классов? Доброго времени суток
Есть задача, которую надо выполнить
Разработать и реализовать программно иерархию классов для работы со счетом вкладчика банка. Для этого следует выполнить следующие задачи:
1. Разработать и реализовать программно базовый класс Bill.
2. Разработать и реализовать программно базовый класс Depositor.
3. Разработать и реализовать программно производный класс BillDepositor.
4. В главной части программы продемонстрировать работу созданной иерархии классов.using System
using System.Collections.Generic
using System.Linq
using System.Text
using System.Threading.Tasks
class Bill
string _ID
double _Balance, Persent
protected string ID
get { return _ID;
set { value = _ID;

protected double Balance
get { return _Balance;
set { value = _Balance;

public Bill(string ID, double Balance)
this.ID = ID
this.Balance = Balance
Persent = 0.03

public override string ToString()
return "Bill number: " + ID + "Balance: " + Balance

~Bill() {

class Depositor {
string _FullName, _Passport
protected string FullName
get { return _FullName;
set { value = _FullName;

protected string Passport
get { return _Passport;
set { value = _Passport;

public Depositor(string FullName, string Passport)
this.FullName = FullName
this.Passport = Passport

public override string ToString()
return "Full Name: " + FullName + "Passport seria/number: " + Passport

~Depositor() {

class BillDepositor : Depositor
double _MaxBill
string _Password
protected double MaxBill
get { return _MaxBill;
set { value = _MaxBill;
}
protected string Password
get { return _Password;
set { value = _Password;

public BillDepositor(string Password, double MaxBille, string FullName, string Passport) : base(FullName, Passport)
this.MaxBill = MaxBill
this.Password = Password

class Program
static void Main()

Как в C# можно сделать, что бы BillDepositor наследовался от Bill и Depositor
Я пробывал:using System
using System.Collections.Generic
using System.Linq
using System.Text
using System.Threading.Tasks

class Bill
string _ID
double _Balance, Persent

protected string ID
get { return _ID;
set { value = _ID;

protected double Balance
get { return _Balance;
set { value = _Balance;

public Bill(string ID, double Balance)
this.ID = ID
this.Balance = Balance
Persent = 0.03

public void DisplayBill()
Console.Write("Account number: " + ID)
Console.Write("Total bill: " + Balance)

public override string ToString()
return "Bill number: " + ID + "Balance: " + Balance

~Bill() {

class Depositor : Bill {
string _FullName, _Passport

protected string FullName
get { return _FullName;
set { value = _FullName;

protected string Passport
get { return _Passport;
set { value = _Passport;

public Depositor(string FullName, string Passport, string ID, double Balance) : base(ID, Balance)
this.FullName = FullName
this.Passport = Passport

public override string ToString()
return "Full Name: " + FullName + "Passport seria/number: " + Passport

~Depositor() {

class BillDepositor : Depositor
double _MaxBill
string _Password

protected double MaxBill
get { return _MaxBill;
set { value = _MaxBill;
}

protected string Password
get { return _Password;
set { value = _Password;

public BillDepositor(double MaxBill, string Password, string FullName, string Passport, string ID, double Balance)
: base(string FullName, string Passport, string ID, double Balance)
this.MaxBill = MaxBill
this.Password = Password

class Program
static void Main()



Но, выходит ошибка "does not contain a constructor that takes 8 arguments"

21 Авг 2019 в 07:00
192 +1
0
Ответы
1

Ошибку "does not contain a constructor that takes 8 arguments" можно исправить, добавив конструктор в класс Bill, который будет принимать параметры ID и Balance и вызывать базовый конструктор класса Object.

Вот исправленный код:

using System
class Bill
protected string ID { get; set;
protected double Balance { get; set;
protected double Persent
public Bill(string ID, double Balance)
this.ID = ID
this.Balance = Balance
Persent = 0.03

class Depositor : Bill
protected string FullName { get; set;
protected string Passport { get; set;
public Depositor(string FullName, string Passport, string ID, double Balance) : base(ID, Balance)
this.FullName = FullName
this.Passport = Passport

class BillDepositor : Depositor
protected double MaxBill { get; set;
protected string Password { get; set;
public BillDepositor(double MaxBill, string Password, string FullName, string Passport, string ID, double Balance)
: base(FullName, Passport, ID, Balance)
this.MaxBill = MaxBill
this.Password = Password

class Program
static void Main()
BillDepositor bd = new BillDepositor(1000, "password123", "John Doe", "1234567890", "1", 500)
Console.WriteLine(bd.ID)
Console.WriteLine(bd.Balance)
Console.WriteLine(bd.FullName)
Console.WriteLine(bd.Passport)
Console.WriteLine(bd.MaxBill)
Console.WriteLine(bd.Password)

}

Теперь класс BillDepositor наследуется от классов Bill и Depositor, и ошибка должна быть исправлена.

20 Апр в 13:10
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 90 663 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир