반응형
package dayday9;
/*
* <생성자>
* - 객체 생성시, 초기화를 담당하는 특수 메소드
* - 클래스 선언하면 기본으로 default생성자가 만들어짐
* 형식 :
* public 클래스(){ 객체의 모든 멤버를 0 또는 null, false로 초기화 해줌
* } //반환 자료형이 없음
* - 객체 생성시 반드시 1회가 호출됨
* ( 생성자 호출이 없으면 객체 생성 불가 )
* - 생성자 오버로딩을 하면 기존 생성자는 사라짐
* - 생성자는 메소드의 맨 위에 한번만 사용가능..
*
* <this>
* this : 이 객체의 레퍼런스(객체 값)
* this. : 이 객체의 ~~을 의미
* this() : 이 객체의 생성자 호출,
*
*/
class Person{
String name;
int age;
Person(){
System.out.println("기본 생성자 호출");
}
Person(int age)
{
this();
this.age = age;
}
Person(String name)
{
this.name = name;
}
Person(String name, int age){
this.name = name;
this.age = age;
}
//같은 클래스 내부에 생성자를 호출할 때 this()호출 시 주의점
/*
* 다른 명령보다 제일 먼저 수행해야함
* 하나의 메소드안에 여러 생성자를 실행 시킬 수 없다.
*/
}
public class test01 {
public static void main(String[] args) {
Person[] p = {
new Person(),
new Person(10),
new Person("피카츄"),
new Person("라이츄",20)
};
for(Person tmp : p){
System.out.println("이름 : "+tmp.name + " 나이 : "+ tmp.age + "세");
}
}
}
반응형
'IT > Programming' 카테고리의 다른 글
[JAVA] 클래스를 활용한 학생 성적 관리 프로그램 예제 (0) | 2023.04.21 |
---|---|
[JAVA] getter, setter, this 사용 예제 (0) | 2023.04.21 |
[JAVA] static 사용 예제 (1) | 2023.04.21 |
[JAVA] 생성자를 활용한 출판사 책 관리 클래스 예제 (0) | 2023.04.21 |
[JAVA] static class, final 사용 예제 (0) | 2023.04.21 |