■ 생성자 (Constructor) : 클래스에서 선언한 멤버변수와 메소드에 대한 정보를
heap 메모리에 할당하고 멤버변수를 기본값으로 초기화한다.
-생성자의 특징
-생성자의 이름은 클래스 이름과 똑같아야 한다.
-선언
[modifier] ClassName([argument-list]){ //객체 생성시 필요한 구문 }
- 모양은 메소드와 비슷하나 리턴 타입이 없으며 이름은 클래스 이름과 같아야 한다
- 클래스내에 생성자가 없으면 컴파일러가 기본 생성자(defaultConstructor)를
컴파일시에 만들어준다.
** 기본생성자는 아규먼트가 없는 생성자를 의미
** 만약 클래스내에 생성자가 하나라도 있으면 컴파일러는 기본생성자를
만들지않는다.
■ this : 객체를 가리키는 지시자
- 멤버변수와 로칼변수의 이름이 같을때 두 변수를 구별하고자
멤버변수 앞에 this를 붙인다.
ex)
public class Account{
public String accountNo;
public String name;
public int balance;
public Account(String accountNo, String name, int balance){
this.accountNo = accountNo;
this.name = name;
this.balance=balance;
}
}
- 생성자에서 클래스 내에 있는 아규먼트가 다른 생성자를 호출하고자 할때
**주의점 : 생성자에서 다른 생성자를 호출할경우 반드시 첫번째라인에서
호출해야한다. 그렇지 않으면 컴파일 에러 발생
public class Account{
public Account(){
this("001","",1000);
}
public Account(String accountNo, String name, int balance){
this.accountNo = accountNo; this.name = name; this.balance=balance;
}
}
heap 메모리에 할당하고 멤버변수를 기본값으로 초기화한다.
-생성자의 특징
-생성자의 이름은 클래스 이름과 똑같아야 한다.
-선언
[modifier] ClassName([argument-list]){ //객체 생성시 필요한 구문 }
- 모양은 메소드와 비슷하나 리턴 타입이 없으며 이름은 클래스 이름과 같아야 한다
- 클래스내에 생성자가 없으면 컴파일러가 기본 생성자(defaultConstructor)를
컴파일시에 만들어준다.
** 기본생성자는 아규먼트가 없는 생성자를 의미
** 만약 클래스내에 생성자가 하나라도 있으면 컴파일러는 기본생성자를
만들지않는다.
■ this : 객체를 가리키는 지시자
- 멤버변수와 로칼변수의 이름이 같을때 두 변수를 구별하고자
멤버변수 앞에 this를 붙인다.
ex)
public class Account{
public String accountNo;
public String name;
public int balance;
public Account(String accountNo, String name, int balance){
this.accountNo = accountNo;
this.name = name;
this.balance=balance;
}
}
- 생성자에서 클래스 내에 있는 아규먼트가 다른 생성자를 호출하고자 할때
**주의점 : 생성자에서 다른 생성자를 호출할경우 반드시 첫번째라인에서
호출해야한다. 그렇지 않으면 컴파일 에러 발생
public class Account{
public Account(){
this("001","",1000);
}
public Account(String accountNo, String name, int balance){
this.accountNo = accountNo; this.name = name; this.balance=balance;
}
}
반응형
'프로그래밍 > Java' 카테고리의 다른 글
상속,다형성,static,final, abstract (0) | 2009.01.21 |
---|---|
오버로딩, 캡슐화,bean (0) | 2009.01.21 |
object와 클래스 (0) | 2009.01.21 |
자바의 연산자와 배열 (0) | 2009.01.21 |
자바 기본 내용 (0) | 2009.01.21 |