기록장
생성자에 대해서 알려줄게2 본문
728x90
생성자 오버로딩이란 뭘까?
생성자 오버로딩이란 매개 변수를 달리하는 생성자를 여러 개 선언하는거야
매개변수의 타입,개수,순서가 다르게 선언하는거지
public class Car{
Car() { ... }
Car(String model) { ... }
Car(String model, String color){ ... }
Car(String model, String color, int maxSpeed) { ... }
}
//오버로딩한 예
생성자 오버로딩 주의 점은
매개 변수의 타입과 개수 선언된 순서가 똑같을 경우 매개 변수 이름만 바꾸는건
오버로딩이 아.니.야
생성자가 오버로딩이 됐다면 new 연산자로 생성자를 호출할 때
제공되는 매개값의 타입과 수에 의해 호출될 생성자가 결정돼~
package sec03.exam01;
public class Car {
//필드
String company = "현대자동차";
String model;
String color;
int maxSpeed;
//생성자
Car() {
}
Car(String model){
this.model = model;
}
Car(String model, String color){
this.model = model;
this.color = color;
}
Car(String model, String color, int maxSpeed){
this.model = model;
this.color = color;
this.maxSpeed = maxSpeed;
}
}
//생성자의 오버로딩
package sec03.exam01;
public class CarExample {
public static void main(String[] args) {
Car car1 = new Car();
System.out.println("car1.company :" + car1.company);
System.out.println();
Car car2 = new Car("자가용");
System.out.println("car2.company :" + car2.company);
System.out.println("car2.model :" + car2.model);
System.out.println();
}
}
//객체 생성시 생성자 선택
728x90
'개발 > JAVA' 카테고리의 다른 글
정적 변수 코드 짜봤어~ 주의할 점도 알려 줄게 (0) | 2022.05.15 |
---|---|
메소드를 알려줄게 2 (0) | 2022.05.14 |
메소드를 말해줄게 (0) | 2022.05.14 |
생성자에 대해서 알려줄게 (0) | 2022.05.12 |
필드 (0) | 2022.05.12 |
Comments