Свойства инкапсуляции и StackOverflowException - C#
Формулировка задачи:
Привет. Столкнулся с проблемой. При выполнении пишет о StockOverFlowException. Помогите разобраться, в чем проблема.
Main
Сам класс:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main()
{
Employee Worker = new Employee(35000, "Jack Wood");
Worker.ShowNameAndSalary();
Worker.EmName = "Jack Wilson";
Worker.EmSalary = 10000;
Worker.ShowNameAndSalary();
}
}
}using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Employee
{
public Employee(){}
public Employee(float Salary, string Name)
{
EmName = Name;
EmSalary = Salary;
}
public string EmName
{
set
{
if (value.Length < 15)
{
EmName = value;
}
else Console.WriteLine("Error! Employee name must be less then 16 symbols");
}
get { return EmName; }
}
public float EmSalary { get; set; }
public void ShowNameAndSalary()
{
Console.WriteLine("Name: {0}\nSalary: {1}$", EmName, EmSalary);
}
}
}Решение задачи: «Свойства инкапсуляции и StackOverflowException»
textual
Листинг программы
private string emname; // закрытая перемення
public string EmName // доступ к закрытой переменной emname
{
set
{
if (value.Length < 15)
{
emname = value;
}
else Console.WriteLine("Error! Employee name must be less then 16 symbols");
}
get { return emname; }
}