객체의 생성 : 연산자인 ‘new’를 사용,new 연산자 뒤에는 해당 클래스의 생성자를 호출한다.
Car car1 = new Car(); // Car클래스의 객체인 car1 인스턴스 생성
Car car2 = new Car(); // Car클래스의 객체인 car2 인스턴스 생성
객체를 생성한 경우 도트(.) 연산자를 사용해 필드 값을 사용할 경우 있다.
ex class
public class Car {
String company; // 자동차 회사
String model = "Gv80"; // 자동차 모델
String color; // 자동차 색상
double price; // 자동차 가격
double speed; // 자동차 속도 , km/h
char gear; // 기어의 상태, P,R,N,D
boolean lights = true; // 자동차 조명의 상태
Tire tire = new Tire();
Door door;
Handle handle;
public Car() {} // 기본 생성자
double gasPedal(double kmh) {
speed = kmh;
return speed;
}
double brakePedal() {
speed = 0;
return speed;
}
char changeGear(char type) {
gear = type;
return gear;
}
boolean onOffLights() {
lights = !lights;
return lights;
}
void horn() {
System.out.println("빵빵");
}
}
ex 필드사용
public class Main {
public static void main(String[] args) {
Car car = new Car(); // 객체 생성
// 초기값과 기본값 확인하기
System.out.println("car.model = " + car.model); // 초기값 "Gv80"이 출력됩니다.
System.out.println("car.color = " + car.color); // 기본값 null이 출력됩니다.
System.out.println();
System.out.println("car.speed = " + car.speed); // 기본값 0.0이 출력됩니다.
System.out.println("car.gear = " + car.gear); // 기본값 \u0000(공백)이 출력됩니다.
System.out.println("car.lights = " + car.lights); // 초기값 true가 출력됩니다.
System.out.println();
System.out.println("car.tire = " + car.tire); // 초기값 인스턴스의 주소가 출력됩니다.
System.out.println("car.door = " + car.door); // 기본값 null이 출력됩니다.
System.out.println();
// 필드 사용
car.color = "blue"; // 필드 color에 "blue" 데이터를 저장합니다.
car.speed = 100; // 필드 speed에 100 데이터를 저장합니다.
car.lights = false; // 필드 lights에 false 데이터를 저장합니다.
System.out.println("car.color = " + car.color); // 저장된 "blue" 데이터가 출력됩니다.
System.out.println("car.speed = " + car.speed); // 저장된 100.0 데이터가 출력됩니다.
System.out.println("car.lights = " + car.lights); // 저장된 false 데이터가 출력됩니다.
}
}
객체를 생성한 경우 도트(.) 연산자를 사용해 메서드 값을 사용할 경우 있다.
ex 메서드
public class Car {
String company; // 자동차 회사
String model; // 자동차 모델
String color; // 자동차 색상
double price; // 자동차 가격
double speed; // 자동차 속도 , km/h
char gear = 'P'; // 기어의 상태, P,R,N,D
boolean lights; // 자동차 조명의 상태
public Car() {} // 기본 생성자
double gasPedal(double kmh, char type) {
changeGear(type);
speed = kmh;
return speed;
}
double brakePedal() {
speed = 0;
return speed;
}
char changeGear(char type) {
gear = type;
return gear;
}
boolean onOffLights() {
lights = !lights;
return lights;
}
void horn() {
System.out.println("빵빵");
}
void carSpeeds(double ... speeds) {
for (double v : speeds) {
System.out.println("v = " + v);
}
}
}