Papers/Others

java inheritance

tomato13 2006. 10. 7. 13:38

abstract class Fruit
{
 protected final static int ripeWeight = 10;

 public abstract boolean grow();

 public void eat()
 {
  System.out.println("1-1");
  if(grow())
   System.out.println("Yum!");
  else
   System.out.println("Yuck!");
 }

 public static int getRipeWeight()
 {
  System.out.println("1-2");
        return ripeWeight;
 }
}

class Citrus extends Fruit
{
 public boolean grow()
 {
  System.out.println("2-1");
  return getWeight() > getRipeWeight();
 }

 public int getWeight()
 {
  System.out.println("2-2");
  return 8;
 }

 public void eat()
 {
  System.out.println("2-3");
  super.eat();
  System.out.println("keen");
 }
}

public class Orange extends Citrus
{

 public int getWeight()
 {
  System.out.println("3-2");
  return super.getWeight()*2;
 }

 public static int getRipeWeight()
 {
  System.out.println("3-3");
  return 20;
 }

 public static void main(String[] args)
 {
  Orange orange = new Orange();
  orange.eat();
 }
}

 

http://kin.naver.com/db/detail.php?d1id=1&dir_id=10106&eid=4bg5RVjmcUx1JU6tNKHKlbv78Ph+oQeQ&qb=wNq52SC787zT

'Papers > Others' 카테고리의 다른 글

2차원 배열 매개변수로 전달하기  (0) 2006.10.15
static, final  (0) 2006.10.07
Java Servlet Page와 Servlet  (0) 2006.10.06
EJB란?  (0) 2006.10.05
Software Partitioning for Effective Automated Unit Testing  (0) 2006.10.03