Source of Pet2.java


  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: }