강의로 돌아가기
-

이해불가 .

public void fill(Suv suv){
System.out.println(Suv에 기름을 넣습니다.);
suv.gas += 10;
System.out.println(기름이+suv.gas+리터 들어있습니다.);
}

이 부분에서 왜 fill메서드 속에 Suv suv이렇게 들어갔는지 이해가안되요
어렵게말고 쉽게 설명가능할까요?

작성중인 코드―Suv.java
1
2
public class Suv extends Car{
}
작성중인 코드―Truck.java
1
2
public class Truck extends Car{
}
작성중인 코드―Bus.java
1
2
public class Bus extends Car{
}
작성중인 코드―Car.java
1
2
3
public class Car{
    public int gas;
}
작성중인 코드―GasStation.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
public class GasStation{
    public static void main(String[]args){
        GasStation gasStation = new GasStation(); //gasStation인스턴스 생성
        Suv suv = new Suv(); //suv 인스턴스 생성
        Truck truck = new Truck(); //truck 인스턴스 생성
        Bus bus = new Bus(); //bus 인스턴스 생성

        //gasStation에서 suv에 기름을 넣습니다.
        gasStation.fill(suv);

        //gasStation에서 truck에 기름을 넣습니다.
        gasStation.fill(truck);

        //gasStation에서 bus에 기름을 넣습니다.
        gasStation.fill(bus);

    }

    public void fill(Suv suv){
        System.out.println("Suv에 기름을 넣습니다.");
        suv.gas += 10;
        System.out.println("기름이 "+suv.gas+"리터 들어있습니다.");
    }

    public void fill(Truck truck){
        System.out.println("Truck에 기름을 넣습니다.");
        truck.gas += 10;
        System.out.println("기름이 "+truck.gas+"리터 들어있습니다.");
    }

    public void fill(Bus bus){
        System.out.println("Bus에 기름을 넣습니다.");
        bus.gas += 10;
        System.out.println("기름이 "+bus.gas+"리터 들어있습니다.");
    }
}
2 개의 답변
-

매개변수를 클래스로 받는 것에 대한 질문이신가요?

public void print(int a) {
        System.out.println(a);
}
public void fill(Suv suv){
        System.out.println("Suv에 기름을 넣습니다.");
        suv.gas += 10;
        System.out.println("기름이 "+suv.gas+"리터 들어있습니다.");
}

위처럼 int형을 매개변수로 넘겨준 것처럼 클래스도 매개변수로 넘겨줄 수 있습니다.

-

Suv suv에서
앞에 Suv는 class 형.
뒤에 suv는 매개변수라고 보면 되지 않을까요?

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.