Categories: Java 언어Korean

Java 총 정리[50. has 문제]

has 문제

이전 걸음에서 has에 관해서 설명하고 공부를 했습니다. 그러면 당연히 그와 관련된 문제를 풀어봄으로써 has를 활용을 할 수 있게 되어야 한다고 생각을 합니다. has를 더 확장을 할 수 있는 걸음이 되 실 수 있습니다.

has를 기초적으로 적용을 하여 class에 다른 class 참조 자료형 변수를 선언 하여 외부에서 객체를 받아서 class 안에 있는 참조 자료형 변수에 대입을 할 수 있고 또한 객체는 어떻게 동작을 해야 이해가 쉬울 수 있는지는 이번 걸음에서 같이 확인을 해보겠습니다.

자동차 자전거 has 문제입니다. 자동차와 자전거의 객체를 생성하고 사람 1과 사람 2가 또한 객체를 만들고 사람 1과 2에는 has관계로 각각 자동차와 자전거 있습니다. main에서 생성된 객체를 사람 1과 2가 객체를 가지고 가고 현실과 최대한 가깝게 has 문제를 푸시면 됩니다.

자동차 자전거 has 문제

문제를 보시면 자동차 객체 1개 자전거 객체 1개 그리고 사람 1 객체 하나 마지막으로 사람 2 객체 하나를 main문에 생성을 해주시고 자동차와 자전거가 각각 사람 1, 사람 2에 있는 참조 자료형 변수에 대입을 합니다. 그리고 자동차 자전거가 사람들에게 전달이 되었기 때문에 main에 있는 자동차 변수와 자전거 변수는 객체를 잃게 해주셔야 합니다. 

참고

class 연습을 위해서 파일명과 같은 class 위에 문제에 필요한 class를 만들어서 구현하세요.

위 문제를 파일명과 같은 Class에 Main문에 소스를 구현해 주세요.

실행 관련 걸음 : 다섯 걸음, 여섯걸음

참고해주세요



class Car{
    String color;
    String menu;

    Car(String c, String m){
        color = c;
        menu = m;
    }

    void dirve(){
        System.out.println("자동차 색깔은 "+color+"이고 제조사는 "+
                menu  +"인 차를 운전합니다.");

    }

}

class Bike{
    String menu;
    String function;

    Bike(String m, String f){
        menu = m;
        function = f;
    }

    void ride(){
        System.out.println("자전거 제조사는 "+menu+"이고 기능은 "+
                function +"인 자전거를 탑니다.");
    }
}
class Human1{
    Car c1;
}

class Human2{
    Bike bike;
}
public class HasTest {
    public static void main(String[] args) {
        Car c = new Car("빨간색","현대");
        Bike b = new Bike("삼천리","산악용");

        Human1 h1 = new Human1();
        Human2 h2 = new Human2();

        h1.c1 = c;
        h2.bike = b;

        c = null;
        b = null;

        h1.c1.dirve();
        h2.bike.ride();

    }
}



        


객체에 대하여
객체에 생성 및 이동을 하려면 현실과 최대한 똑같이 하는게 좋습니다. 그래야 객체가 넘어 갔는지 받았는지에 대한 이해를 빨리 할 수 있습니다.

위에 사진을 보고 객체 이동의 공부에 참고를 하시고 하시면 됩니다.

Dolphin

Recent Posts

Java 총정리[97. Java GUI]

Java GUI Java GUI에 대해서 이번 걸음에서 배움으로써 GUI에 전반적인 지식과 Java GUI를 구현하는 방법…

4개월 ago

Java 총정리[96. Java TCP 통신 프로그램 구현]

Java TCP 통신 프로그램 구현 Java TCP 통신 프로그램 구현을 위해서 이전 걸음에서 쓰레드에 대한…

5개월 ago

Java 총정리[95.쓰레드 통신]

쓰레드 통신 이전 걸음에서 쓰레드의 임계영역에 대해서 같이 공부를 했습니다. 동기화에 대한 개념을 계속적으로 하고…

5개월 ago

Java 총 정리[94. 쓰레드 임계영역]

쓰레드 임계영역 이전 걸음에서 쓰레드의 동기화에 대해서 같이 공부를 했습니다. 동기화에 대한 전반적인 내용을 공부하고…

6개월 ago

Java 총 정리[93. 쓰레드 동기화]

쓰레드 동기화 이전 걸음에서 계속 쓰레드에 대해서 공부를 하고 있습니다. 쓰레드는 상당히 중요한 개념이기 때문에…

6개월 ago

Java 총 정리[92. 쓰레드 join()]

쓰레드 join() 이전 걸음에서 쓰레드의 전반적인 실행 흐름에 대해서 공부를 했습니다. 이제 배운 실행 흐름…

6개월 ago

This website uses cookies.