public static void Main() { IManager peach = new CEO { FirstName = "Peach" }; peach.CalculatePerHourRate(6); IManaged mario = new Manager { FirstName = "Mario" }; mario.AssignManager(peach); mario.CalculatePerHourRate(4); Employee luigi = new Employee { FirstName = "Luigi" }; luigi.AssignManager(mario); luigi.CalculatePerHourRate(2); Console.WriteLine($"{luigi.FirstName}'s salary is {luigi.Salary}/hour"); }
static void Main(string[] args) { // Console.WriteLine("Hello World! this is LSP correct lib"); // Manager manager =new Manager(); // manager.FirstName="pamal"; // manager.LastName="sahan"; // manager.CalculatePerHourRate(4); // Employee employee=new Employee(); // employee.FirstName="chamath"; // employee.LastName="deshan"; // employee.AssignManager(manager); // employee.CalculatePerHourRate(2); // Console.WriteLine($"{employee.FirstName}'s salary is ${employee.Salary}/hour"); // LSPcorrect.model. Manager manager =new Manager(); // manager.FirstName="pamal"; // manager.LastName="sahan"; // manager.CalculatePerHourRate(4); BaseEmployee employee = new CEO(); employee.FirstName = "pamal"; employee.LastName = "sahan"; employee.CalculatePerHourRate(4); Console.WriteLine($"{employee.FirstName}'s salary is ${employee.Salary}/hour"); }
static void Main(string[] args) { //Manager accountingVP = new Manager(); IManager accountingVP = new Manager(); //this would work with new CEO too because accountingVP.FirstName = "Emma"; accountingVP.LastName = "Stone"; accountingVP.CalculatePerHourRate(4); Console.WriteLine($"{ accountingVP.FirstName }'s salary is ${ accountingVP.Salary }/hour."); //Employee emp = new Employee(); //this works so no VIOLATION of Liskov Sub //Employee emp = new Manager(); //This works so no VIOLATION of Liskov Sub //Employee emp = new CEO(); //This DOES NOT work so it violates Liskov Sub //this works for new Employee, new Manager, and new CEO because they all inherit from BaseEmployee BaseEmployee emp = new CEO(); emp.FirstName = "Tim"; emp.LastName = "Corey"; //emp.AssignManager(accountingVP); emp.CalculatePerHourRate(2); Console.WriteLine($"{ emp.FirstName }'s salary is ${ emp.Salary }/hour."); Console.ReadLine(); }
static void Main(string[] args) { IManager accountingVP = new CEO(); accountingVP.FirstName = "Emma"; accountingVP.LastName = "Stone"; accountingVP.CalculatePerHourRate(4); IManaged emp = new Manager(); emp.FirstName = "Tim"; emp.LastName = "Corey"; emp.AssignManager(accountingVP); emp.CalculatePerHourRate(2); Console.WriteLine($"{ emp.FirstName }'s salary is ${ emp.Salary }/hour."); }
static void Main(string[] args) { IManager manager = new CEO(); manager.FirstName = "Emma"; manager.LastName = "Stone"; manager.CalculatePerHourRate(4); IManaged emp = new Employee(); emp.FirstName = "Petar"; emp.LastName = "Mihaylov"; emp.AssignManager(manager); emp.CalculatePerHourRate(2); Console.WriteLine($"{emp.FirstName}'s salary is ${emp.Salary}/hour."); Console.ReadLine(); }
static void Main(string[] args) { IManager ceo = new CEO(); ceo.FirstName = "Emma"; ceo.LastName = "Stone"; ceo.CalculatePerHourRate(1); IManaged emp = new Manager(); emp.FirstName = "Tim"; emp.LastName = "Corey"; emp.AssignManager(ceo); emp.CalculatePerHourRate(6); Console.WriteLine($"{ceo.FirstName}'s salary is ${ceo.Salary}/hour"); Console.WriteLine($"{emp.FirstName}'s salary is ${emp.Salary}/hour"); Console.ReadKey(); }
public static void Main(string[] args) { IManager accountingVP = new CEO(); accountingVP.FirstName = "E mma"; accountingVP.LastName = "Stone"; accountingVP.CalculatePerHourRate(4); IManaged employee = new Employee(); employee.FirstName = "Alex"; employee.LastName = "DC"; employee.AssignManager(accountingVP); employee.CalculatePerHourRate(2); Console.WriteLine($"{ employee.FirstName }´s salary is ${ employee.Salary }/hour."); Console.ReadLine(); }
static void Main(string[] args) { IManager accountingVP = new CEO(); accountingVP.FirstName = "Emma"; accountingVP.LastName = "Stone"; accountingVP.CalculatePerHourRate(4); IManaged emp = new Employee(); emp.FirstName = "Laurent"; emp.LastName = "Bajrami"; emp.AssignManager(accountingVP); emp.CalculatePerHourRate(2); Console.WriteLine($"{ emp.FirstName}'s salary is ${ emp.Salary }/hour"); Console.ReadLine(); }
static void Main(string[] args) { Manager accountingVP = new Manager(); accountingVP.FirstName = "Bhaskar"; accountingVP.LastName = "Shelar"; accountingVP.CalculatePerHourRate(4); //Console.WriteLine($"{ accountingVP.FirstName }'s salary is ${ accountingVP.Salary }/hour."); IManager emp = new CEO(); emp.FirstName = "vaibhav"; emp.LastName = "Shelar"; //emp.AssignManager(accountingVP); emp.CalculatePerHourRate(2); Console.WriteLine($"{ emp.FirstName }'s salary is ${ emp.Salary }/hour."); Console.ReadLine(); }