public class Pet2
1:
2: /**
3: Revised class for basic pet data: name, age, and weight.
4: Constructors and set methods call a private method.
5: */
6: public class Pet2
7: {
8: private String name;
9: private int age; //in years
10: private double weight;//in pounds
11:
12: public Pet2(String initialName, int initialAge,
13: double initialWeight)
14: {
15: set(initialName, initialAge, initialWeight);
16: }
17:
18: public Pet2(String initialName)
19: {
20: set(initialName, 0, 0);
21: }
22:
23: public Pet2(int initialAge)
24: {
25: set("No name yet.", initialAge, 0);
26: }
27:
28: public Pet2(double initialWeight)
29: {
30: set("No name yet.", 0, initialWeight);
31: }
32:
33: public Pet2( )
34: {
35: set("No name yet.", 0, 0);
36: }
37:
38: public void setPet(String newName, int newAge, double newWeight)
39: {
40: set(newName, newAge, newWeight);
41: }
42:
43: public void setName(String newName)
44: {
45: set(newName, age, weight);//age and weight are unchanged.
46: }
47:
48: public void setAge(int newAge)
49: {
50: set(name, newAge, weight);//name and weight are unchanged.
51: }
52:
53: public void setWeight(double newWeight)
54: {
55: set(name, age, newWeight);//name and age are unchanged.
56: }
57:
58: private void set(String newName, int newAge, double newWeight)
59: {
60: name = newName;
61: if ((newAge < 0) || (newWeight < 0))
62: {
63: System.out.println("Error: Negative age or weight.");
64: System.exit(0);
65: }
66: else
67: {
68: age = newAge;
69: weight = newWeight;
70: }
71: }
72:
73: public String getName( )
74: {
75: return name;
76: }
77:
78: public int getAge( )
79: {
80: return age;
81: }
82:
83: public double getWeight( )
84: {
85: return weight;
86: }
87:
88: public void writeOutput( )
89: {
90: System.out.println("Name: " + name);
91: System.out.println("Age: " + age + " years");
92: System.out.println("Weight: " + weight + " pounds");
93: }
94: }