All pastes #941381 Raw Edit

woof woof

public text v1 · immutable
·published 2008-03-13 17:37 UTC
rendered paste body
import java.util.*;
import java.io.*;

public class Pets1
{   
 static String sName ="" ;
 static String sSchool ="Paschal High School" ;
 static String sLab = "Pets1";
 static FileWriter oFile;
 //static String sFile="\\\\h010schms01\\stuhome$\\angela.johnston\\My Documents\\";
 
public static void main(String sArgs[])throws IOException
{  
 begin();		
  Pet oDog=new Dog("Hoang",50);//create pet objects from subclass constructors
  Pet oSnake=new Snake("Peter",80);
  Pet oDonkey=new Donkey("Ernie",3);
  Pet oChicken=new Chicken("Souvik",100);
  identify(oDog);//calls identify method under main method
  identify(oSnake);
  identify(oDonkey);
  identify(oChicken);
 end();
}

public static void identify(Pet oWhat)
{//prints out info on Pet object
	System.out.println(oWhat+"---"+oWhat.speak()+" "+oWhat.speak()+"!");
	System.out.println(oWhat.getName()+" likes to "+oWhat.move()+" and"+
	                   " likes to eat "+oWhat.eat());
	System.out.println();
}

public static void begin()throws IOException
{
 Date oDate = new Date();
 System.out.println(sName+" "+sSchool+"  Lab: "+sLab);
 System.out.println(oDate);
 System.out.println("*************************** EXECUTION BEGINS ****************************");
 System.out.println();
}
	
public static void end()throws IOException
{
 Date oDate = new Date();
 System.out.println();
 System.out.println("***************************  EXECUTION ENDS *****************************");
 System.out.println(sName+" "+sSchool+"  Lab: "+sLab+"**");
 System.out.println(oDate+"\f");		
}
}

abstract class Pet//parent class
{
	private String name;
	
	public Pet(String petName)//constructor
	{
		name=petName;
	}
	
	public String getName()
	{
		return name;
	}
	
	public String toString()
	{
		return "pet "+name;
	}
	
	abstract public String speak();
	//abstract methods have no implementation they're just implemented for
	//subclasses to use this means that you can't actually instantiate a Pet
	//object without one of the subclasses being used
	abstract public String move();
	abstract public String eat();
}

class Dog extends Pet
{
	private int weight;
	
	public Dog(String dogName, int dogWeight)
	{
		super(dogName);//does what parent constructor did
		weight=dogWeight;
	}
	
	public int getWeight()
	{
		return weight;
	}
	
	public String toString()
	{
		return super.toString()+" is a dog, weighing "+weight+" pounds";
	}
	
	public String speak()
	{
		return "woof";
	}
	
	public String move()
	{
		return "run";
	}
	
	public String eat()
	{
		return "Chicken";
	}
}

class Snake extends Pet
{
	private int length;
	
	public Snake(String snakeName, int snakeLength)
	{
		super(snakeName);
		length=snakeLength;
	}
	
	public int getLength()
	{
		return length;
	}
	
	public String toString()
	{
		return super.toString()+" is a snake, "+length+" inches long";
	}
	
	public String speak()
	{
		return "hiss";
	}
	
	public String move()
	{
		return "slither";
	}
	
		public String eat()
	{
		return "mice";
	}
}

class Donkey extends Pet
{
	private int height;
	
	public Donkey(String donkeyName, int donkeyHeight)
	{
		super(donkeyName);
		height=donkeyHeight;
	}
	
	public int getHeight()
	{
		return height;
	}
	
	public String toString()
	{
		return super.toString()+" is a donkey, kicking "+height+" feet";
	}
	
	public String speak()
	{
		return "hee-haw!";
	}
	
	public String move()
	{
		return "stay";
	}
	
	public String eat()
	{
		return "pigs";
	}
}

class Chicken extends Pet
{
	private int feathers;
	
	public Chicken(String chickenName, int chickenFeathers)
	{
		super(chickenName);
		feathers=chickenFeathers;
	}
	
	public int getWFeathers()
	{
		return feathers;
	}
	
	public String toString()
	{
		return super.toString()+" is a chicken, having "+feathers+" feathers";
	}
	
	public String speak()
	{
		return "cluck";
	}
	
	public String move()
	{
		return "strut";
	}
	
	public String eat()
	{
		return "chicken nuggets";
	}
}
//