public class Hopper{

	//utilse DATA HIDING!
	private String name;
	
	private int distance;
	
	private int numHops;
	
	
	public Hopper(String name){
	
		this.name = name;
		
		this.distance = 0;
		
		this.numHops = 0;
	
	}
	
	//ACCESSOR (GET) METHODS
	public String getName(){
	
		return this.name;
	
	}
	
	public int getDistance(){
	
		return this.distance;
	
	}
	
	public int getNumHops(){
	
		return this.numHops;
	
	}
	
	
	
	
	//MUTATOR (SET) METHODS
	public void setDistance(int distance){
	
		this.distance = this.distance + distance;
		
	
	}
	
	public void setNumHops(){
	
		numHops = numHops + 1;
	
	}
	
	
	//OTHER BEHAVIOUR/METHODS
	
	public void hop(int d) {
		
		setDistance(d);
		scream();
		setNumHops();
	}
	
	public void scream(){
	
		System.out.println(name+" is hopping: ");
	
	}
	
	public String toString(){
	
		return "Name: "+name+"; Distance: "+distance+"; Num Hops: "+numHops;
	
	}

}