/* * File: CyberPet.java * Author: Java, Java, Java * Description: This class represents a CyberPet that can * eat and sleep on command. This version incorporates a * String instance variable to represent the pet's name. * Note that the instance variables are declared private. * Public access methods, setName(), getName(), eat(), sleep(), * provide an interface that limits the way other objects can * change a CyberPet's state. This helps guarantee a consistent * internal state. */ public class CyberPet { // Data private boolean isEating = true; // CyberPet's state private boolean isSleeping = false; private String name = "no name"; // CyberPet's name // Methods public void setName(String str) { name = str; } // setName() public void eat() // Start eating { isEating = true; // Change the state isSleeping = false; System.out.println(name + " is eating"); return; } // eat() public void sleep() // Start sleeping { isSleeping = true; // Change the state isEating = false; System.out.println(name + " is sleeping"); return; } // sleep() } // CyberPet