-
예제_01
import java.io.*;
class Car
{protected int velocity;
protected int weeelNum;
protected String carName;
public void speedUp()
{
velocity = velocity + 1;
}public void speedUp(int num)
{
velocity += num;
}
public void speedDown()
{
velocity = velocity -1;
if(velocity < 0)
velocity =0;
}
}
---------------------------- Car 클래스 생성.. -_-aclass Truck extends Car
{
public void speedUp(int num)
{
velocity += num;if(velocity >100)
velocity =100;
}
public static void main(String[] args)
{
Truck myTruck;
Car realCar, myCar;myTruck = new Truck();
myCar = myTruck;
myCar.speedUp(300);
System.out.println("Truck speed is : " +myCar.velocity);
}
}
------------------------------------ Truck 클래스 생성 (Car 클래스를 상속 받음)=========================================
class Outer
{
private int height;
private int width;public Outer(int h, int w)
{
height = h;
width = w;
}public Inner getInner()
{
return new Inner();
}class Inner
{
private float rate = 0.5f;public float capacity()
{
return rate * height * width;
}
}
}
-------------------------- Outer 클래스 생성 Inner 클래스를 포함 하고 있다. (내부 클래스)class TestOuter
{public static void main(String[] args)
{
Outer outRef = new Outer(100,200);Outer.Inner MyInner = outRef.getInner();
System.out.println("Inner valus is : " + MyInner.capacity());
Outer.Inner yourInner = outRef.new Inner();
System.out.println("Inner Valus is : " + yourInner.capacity());
}
}
------------------------ TestOuter 클래스 생성 (따로 상속 받을 필요 없이 Inner 객체를 상속 받을때와 동일하게 사용함)
=====================================================================================================
public class Outer {
public Outer()
{
System.out.println("외부 클래스 생성");
}
public Object getAnonInnerObj()
{
return new Object()
{
public String toString()
{
return "이건 Anonymous Inner 객체";
}
};
}
}----------------------- Anonymous(무명 클래스) 생성하는 Outer 클래스.
public class TestOuter {
public static void main(String[] args) {
Outer myOut = new Outer();
Object obj = new Object();
Object anonObj = myOut.getAnonInnerObj();
System.out.println(obj.toString());
System.out.println(anonObj.toString());}
}
------------------------TestOuter 클래스로 Outer 클래스에 있는 Anonymos 클래스와 같이 쓰는 예제.Anonymos 클래스는 이름없는 무명의 클래스 이다. 즉.. 필요할때 쓰고 나면 존재가 사라진다.. (클래스 파일을 볼수도 없다)
또한 Object (최상위 클래스) 를 생성하여 모든 클래스를 받아 사용 하는 .. 기능을 쓴다.
자세한 설명은 책 206 페이지에 있으니 참고 하세요.
'Other > Java' 카테고리의 다른 글
활용 예제및.. 과제 내용. (0) 2010.04.20 뭔지모를 소스 -_-;;;;; (0) 2010.04.20 Swing을 이용한 윈도우 메모장 만들기 (0) 2010.04.20