디폴트 생성자(없어도 호출됨 - 컴파일러가 자동으로만들어준다) - 초기화 용도
생성자를 수동으로 만든다면 디폴트 생성자를 만들어 주지 않는다.
package ch04;
// 상태와 행동
public class Person {
String name;
String job;
int age;
char gender;
String bloodType;
// 디폴트 생성자(없어도 호출됨 - 컴파일러가 자동으로만들어준다) - 초기화 용도
// 생성자를 수동으로 만든다면 디폴트 생성자를 만들어 주지 않는다.
// 매개변수가 없다
public Person() { // 함수와 비슷하게 생겼지만 첫글자가 대문자며 클래스이름과 같다.
}
// 오버로딩(함수명이 같아도 매개변수가 다르면 다른 함수로 인식한다)
public Person(String name, String job, int age, char gender, String bloodType) {
this.name = name;
this.job = job;
this.age = age;
this.gender = gender;
this.bloodType = bloodType;
}
}
package ch04;
public class PersonApp {
public static void main(String[] args) {
Person p1 = new Person(); // 인스턴스화
p1.name = "최승희"; // 변수에 값넣기는 문법적으로는 가능하지만 현실적이지 않다. 이렇게 짜면 좋지 않다.
p1.job = "의사";
p1.gender = '여';
p1.bloodType = "AB";
p1.age = 45;
Person p2 = new Person();
p2.name = "이미녀";
p2.job = "골프선수";
p2.gender = '여';
p2.bloodType = "O";
p2.age = 28;
Person p3 = new Person();
p3.name = "김미남";
p3.job = "교수";
p3.gender = '남';
p3.bloodType = "AB";
p3.age = 47;
System.out.println(p3.name);
System.out.println(p3.job);
System.out.println(p3.gender);
System.out.println(p3.age);
System.out.println(p3.bloodType);
Person p4 = new Person(
"홍길동",
"학생",
33,
'남',
"O"
);
System.out.println(p4.name);
}
}
'Programming Language > Java' 카테고리의 다른 글
자바 public, private 비교 (0) | 2020.03.27 |
---|---|
자바 생성자 자동 생성하는법 (0) | 2020.03.27 |
자바 final과 static 변수 이해하기 (0) | 2020.03.27 |
200323 // STACK, 표현식, DAEMON (0) | 2020.03.23 |
이클립스 run 설정 (0) | 2020.03.23 |