Было выдано исключение System.StackOverflowException.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Было выдано исключение System.StackOverflowException.

Сообщение Anonymous »

Я создал приложение C# Windows Forms с использованием ООП, и мой код выглядит написанным на бумаге. Впервые получаю эту ошибку и не знаю, как ее исправить. Пожалуйста, помогите.
Вот мой код ниже:
Код класса

Код: Выделить всё

public class Employee
{
private int hoursWorked;
private double ratePerHour;

// Property structures (getter/setter methods)
public int propHoursWorked
{
get { return hoursWorked; }
set { hoursWorked = value; }
}

public double propRatePerHour
{
get { return ratePerHour; }
set { ratePerHour = value; }
}

// Default Constructor
public Employee()
{
propHoursWorked = 0;
propRatePerHour = 0.00;
}

// Parameterised Constructor
public Employee(int hw, double rph)
{
propHoursWorked = hw;
propRatePerHour = rph;
}

// Methods
public double calcBase()
{
return (propRatePerHour * propHoursWorked);
}

public double calcTax()
{
return (calcBase() * 0.15);
}

public double calcNet()
{
return (calcBase() - calcNet());
}

}
Код драйвера/кнопки

Код: Выделить всё

 private void btnCalculate_Click(object sender, EventArgs e)
{
/// Declare variables
int HoursWorked;
double RatePerHour, BaseSalary=0, TaxDue=0, NetPay=0;

// Input
HoursWorked = int.Parse(txtHoursWorked.Text);
RatePerHour = double.Parse(txtRatePerHour.Text);

// Processing
// Create an object using the class as a blueprint
// Method 1 - Using the Default Constructor
Employee objE = new Employee(HoursWorked, RatePerHour);

BaseSalary = objE.calcBase();
TaxDue = objE.calcTax();
NetPay = objE.calcNet();

// Output
lblBaseSalary.Text = BaseSalary.ToString("C");
lblTax.Text = TaxDue.ToString("C");
lblNetPay.Text = NetPay.ToString("C");
}
'Выброшено исключение типа «System.StackOverflowException».
Вот сообщение об ошибке. Он просто срабатывает в случайных местах класса

Подробнее здесь: https://stackoverflow.com/questions/790 ... was-thrown
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Было выдано исключение System.StackOverflowException.
    Anonymous » » в форуме C#
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • System.Net.Sockets.Stream выдает исключение System.StackOverflowException
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • System.Net.Sockets.Stream выдает исключение System.StackOverflowException
    Anonymous » » в форуме C#
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Установка NavigationCacheMode на странице вызывает исключение System.StackOverflowException с CallWindowProc
    Anonymous » » в форуме C#
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous
  • Установка NavigationCacheMode на странице вызывает исключение System.StackOverflowException с CallWindowProc
    Anonymous » » в форуме C#
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»