Java Reference
In-Depth Information
not provide corresponding
set
methods. Lines 55-84 declare
public
set
and
get
methods
for the class's
grossSales
and
commissionRate
instance variables (declared in lines 9-10).
The class declares its instance variables as
private
, so objects of other classes cannot di-
rectly access these variables.
1
// Fig. 9.4: CommissionEmployee.java
2
// CommissionEmployee class represents an employee paid a
3
// percentage of gross sales.
4
5
public
class
CommissionEmployee
extends
Object
{
6
private
final
String firstName;
7
private
final
String lastName;
8
private
final
String socialSecurityNumber;
9
private
double
grossSales;
// gross weekly sales
10
private
double
commissionRate;
// commission percentage
11
12
// five-argument constructor
13
public
CommissionEmployee(String firstName, String lastName,
14
String socialSecurityNumber,
double
grossSales,
15
double
commissionRate)
16
{
17
// implicit call to Object's default constructor occurs here
18
19
// if grossSales is invalid throw exception
20
if
(grossSales <
0.0
)
21
throw new
IllegalArgumentException(
22
"Gross sales must be >= 0.0"
);
23
24
// if commissionRate is invalid throw exception
25
if
(commissionRate <=
0.0
|| commissionRate >=
1.0
)
26
throw new
IllegalArgumentException(
27
"Commission rate must be > 0.0 and < 1.0")
;
28
29
this
.firstName = firstName;
30
this
.lastName = lastName;
31
this
.socialSecurityNumber = socialSecurityNumber;
32
this
.grossSales = grossSales;
33
this
.commissionRate = commissionRate;
34
}
// end constructor
35
36
// return first name
37
public
String getFirstName()
38
{
39
return
firstName;
40
}
41
42
// return last name
43
public
String getLastName()
44
{
45
return
lastName;
46
}
Fig. 9.4
| CommissionEmployee
class represents an employee paid a percentage of gross sales.
(Part 1 of 3.)