List the differences between CommissionEmployee class and BasePlusCommissionEmployee class public class BasePlusCommissionEmployee { public string FirstName { get; } public string LastName { get; } public string SocialSecurityNumber { get; } private decimal grossSales; private decimal commissionRate; private decimal baseSalary; public BasePlusCommissionEmployee(string firstName, string lastName, string socialSecurityNumber, decimal grossSales, decimal commissionRate, decimal baseSalary) { FirstName = firstName; LastName = lastName; SocialSecurityNumber = socialSecurityNumber; GrossSales = grossSales; CommissionRate = commissionRate; BaseSalary = baseSalary; } public decimal GrossSales { get { return grossSales; } set { if (value < 0) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(GrossSales)} must be >= 0"); } grossSales = value; } } public decimal CommissionRate { get { return commissionRate; } set { if (value <= 0 || value >= 1) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(CommissionRate)} must be > 0 and < 1"); } commissionRate = value; } } public decimal BaseSalary { get { return baseSalary; } set { if (value < 0) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(BaseSalary)} must be >= 0"); } baseSalary = value; } } public decimal Earnings() => baseSalary + (commissionRate * grossSales); public override string ToString() => $"base-salaried commission employee: {FirstName} {LastName}\n" + $"social security number: {SocialSecurityNumber}\n" + $"gross sales: {grossSales:C}\n" + $"commission rate: {commissionRate:F2}\n" + $"base salary: {baseSalary:C}"; } public class CommissionEmployee : object { public string FirstName { get; } public string LastName { get; } public string SocialSecurityNumber { get; } private decimal grossSales; // gross weekly sales private decimal commissionRate; // commission percentage public CommissionEmployee(string firstName, string lastName, string socialSecurityNumber, decimal grossSales, decimal commissionRate) { FirstName = firstName; LastName = lastName; SocialSecurityNumber = socialSecurityNumber; GrossSales = grossSales; CommissionRate = commissionRate; } public decimal GrossSales { get { return grossSales; } set { if (value < 0) { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(GrossSales)} must be >= 0"); } grossSales = value; } } public decimal CommissionRate { get { return commissionRate; } set { if (value <= 0 || value >= 1) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(CommissionRate)} must be > 0 and < 1"); } commissionRate = value; } } public decimal Earnings() => commissionRate * grossSales; public override string ToString() => $"commission employee: {FirstName} {LastName}\n" + $"social security number: {SocialSecurityNumber}\n" + $"gross sales: {grossSales:C}\n" + $"commission rate: {commissionRate:F2}"; }
List the differences between CommissionEmployee class and BasePlusCommissionEmployee class public class BasePlusCommissionEmployee { public string FirstName { get; } public string LastName { get; } public string SocialSecurityNumber { get; } private decimal grossSales; private decimal commissionRate; private decimal baseSalary; public BasePlusCommissionEmployee(string firstName, string lastName, string socialSecurityNumber, decimal grossSales, decimal commissionRate, decimal baseSalary) { FirstName = firstName; LastName = lastName; SocialSecurityNumber = socialSecurityNumber; GrossSales = grossSales; CommissionRate = commissionRate; BaseSalary = baseSalary; } public decimal GrossSales { get { return grossSales; } set { if (value < 0) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(GrossSales)} must be >= 0"); } grossSales = value; } } public decimal CommissionRate { get { return commissionRate; } set { if (value <= 0 || value >= 1) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(CommissionRate)} must be > 0 and < 1"); } commissionRate = value; } } public decimal BaseSalary { get { return baseSalary; } set { if (value < 0) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(BaseSalary)} must be >= 0"); } baseSalary = value; } } public decimal Earnings() => baseSalary + (commissionRate * grossSales); public override string ToString() => $"base-salaried commission employee: {FirstName} {LastName}\n" + $"social security number: {SocialSecurityNumber}\n" + $"gross sales: {grossSales:C}\n" + $"commission rate: {commissionRate:F2}\n" + $"base salary: {baseSalary:C}"; } public class CommissionEmployee : object { public string FirstName { get; } public string LastName { get; } public string SocialSecurityNumber { get; } private decimal grossSales; // gross weekly sales private decimal commissionRate; // commission percentage public CommissionEmployee(string firstName, string lastName, string socialSecurityNumber, decimal grossSales, decimal commissionRate) { FirstName = firstName; LastName = lastName; SocialSecurityNumber = socialSecurityNumber; GrossSales = grossSales; CommissionRate = commissionRate; } public decimal GrossSales { get { return grossSales; } set { if (value < 0) { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(GrossSales)} must be >= 0"); } grossSales = value; } } public decimal CommissionRate { get { return commissionRate; } set { if (value <= 0 || value >= 1) // validation { throw new ArgumentOutOfRangeException(nameof(value), value, $"{nameof(CommissionRate)} must be > 0 and < 1"); } commissionRate = value; } } public decimal Earnings() => commissionRate * grossSales; public override string ToString() => $"commission employee: {FirstName} {LastName}\n" + $"social security number: {SocialSecurityNumber}\n" + $"gross sales: {grossSales:C}\n" + $"commission rate: {commissionRate:F2}"; }
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
C#
List the differences between CommissionEmployee class and BasePlusCommissionEmployee class
public class BasePlusCommissionEmployee
{
public string FirstName { get; }
public string LastName { get; }
public string SocialSecurityNumber { get; }
private decimal grossSales;
private decimal commissionRate;
private decimal baseSalary;
public BasePlusCommissionEmployee(string firstName, string lastName,
string socialSecurityNumber, decimal grossSales,
decimal commissionRate, decimal baseSalary)
{
FirstName = firstName;
LastName = lastName;
SocialSecurityNumber = socialSecurityNumber;
GrossSales = grossSales;
CommissionRate = commissionRate;
BaseSalary = baseSalary;
}
public decimal GrossSales
{
get
{
return grossSales;
}
set
{
if (value < 0) // validation
{
throw new ArgumentOutOfRangeException(nameof(value),
value, $"{nameof(GrossSales)} must be >= 0");
}
grossSales = value;
}
}
public decimal CommissionRate
{
get
{
return commissionRate;
}
set
{
if (value <= 0 || value >= 1) // validation
{
throw new ArgumentOutOfRangeException(nameof(value),
value, $"{nameof(CommissionRate)} must be > 0 and < 1");
}
commissionRate = value;
}
}
public decimal BaseSalary
{
get
{
return baseSalary;
}
set
{
if (value < 0) // validation
{
throw new ArgumentOutOfRangeException(nameof(value),
value, $"{nameof(BaseSalary)} must be >= 0");
}
baseSalary = value;
}
}
public decimal Earnings() =>
baseSalary + (commissionRate * grossSales);
public override string ToString() =>
$"base-salaried commission employee: {FirstName} {LastName}\n" +
$"social security number: {SocialSecurityNumber}\n" +
$"gross sales: {grossSales:C}\n" +
$"commission rate: {commissionRate:F2}\n" +
$"base salary: {baseSalary:C}";
}
public class CommissionEmployee : object
{
public string FirstName { get; }
public string LastName { get; }
public string SocialSecurityNumber { get; }
private decimal grossSales; // gross weekly sales
private decimal commissionRate; // commission percentage
public CommissionEmployee(string firstName, string lastName,
string socialSecurityNumber, decimal grossSales,
decimal commissionRate)
{
FirstName = firstName;
LastName = lastName;
SocialSecurityNumber = socialSecurityNumber;
GrossSales = grossSales;
CommissionRate = commissionRate;
}
public decimal GrossSales
{
get
{
return grossSales;
}
set
{
if (value < 0)
{
throw new ArgumentOutOfRangeException(nameof(value),
value, $"{nameof(GrossSales)} must be >= 0");
}
grossSales = value;
}
}
public decimal CommissionRate
{
get
{
return commissionRate;
}
set
{
if (value <= 0 || value >= 1) // validation
{
throw new ArgumentOutOfRangeException(nameof(value),
value, $"{nameof(CommissionRate)} must be > 0 and < 1");
}
commissionRate = value;
}
}
public decimal Earnings() => commissionRate * grossSales;
public override string ToString() =>
$"commission employee: {FirstName} {LastName}\n" +
$"social security number: {SocialSecurityNumber}\n" +
$"gross sales: {grossSales:C}\n" +
$"commission rate: {commissionRate:F2}";
}
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 3 steps

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education