
package week03;
public class Car {
//필드영역
//1) 고유데이터영역
String company;
String model;
String color;
double price;
//2) 상태 데이터 영역
double speed;
char gear;
boolean lights;
//3) 객체 데이터 영역
Tire tire = new Tire();
Door door;
Handle handle;
//생성자영역
//생성자 : 처음 객체가 생성될 때 어떤 로직을 수행해야 하며, 어떤 값이 필수로 들어와야 하는지 정의함
public Car () {}
//메서드 영역.
//gasPedal input:kmh, output:speed
double gasPedal(double kmh, char type) {
changeGear(type); //가속도 페달을 밟으면 자동으로 기어가 변한다.
speed = kmh;
return speed;
}
//breakePedal input:x output:speed
double breakePadal() {
speed=0;
return speed;
}
//changeGear input:gear(chartype), output:gear
char changeGear(char type) {
gear = type;
return gear;
}
//onOffLight input:x, output:light(boolean)
boolean onOffLights() {
lights = !lights;
return lights;
}
//horn input:x output:x
void horn() {
System.out.println("빵빵!");
}
//자동차의 속도.. 가변길이 메서드
void carSpeeds(double ... speeds) {
for (double v : speeds) {
System.out.println("v = " + v);
}
}
}
package week03;
public class Main {
public static void main(String[] args) {
Car car = new Car(); //개체 생성
//메서드 호출 및 반환값 저장
double speed = car.gasPedal(100, 'D');
System.out.println("speed="+speed);
boolean lights = car.onOffLights();
System.out.println("Lights="+lights);
}
}

