레이블이 데이터 타입인 게시물을 표시합니다. 모든 게시물 표시
레이블이 데이터 타입인 게시물을 표시합니다. 모든 게시물 표시

2016년 7월 25일 월요일

4day / SE / Constructor

http://www.javatpoint.com
this keyword : 현재 자기 자신의 객체를 가르키는 자바 키워드(예약어)
this.변수명 --> 현 객체의 변수를 가르킨다
ex)
private String name;// 인스턴스 변수 또는 객체의 멤버변수
public void setName(String name){ // name 매개변수 or 지역변수
//name=name; // 둘 다 매개변수를 가르킨다
this.name = name;
//this.name은 객체의 변수이므로
//매개변수 name에 저장된 정보를 객체의 변수 영역에
//할당한다
}

 Constructor ( 생성자 ) : 객체 생성시 사용되는 클래스의 구성요소
ex)
new Person(); ----> class Person{
Person(){}
}

객체 생성 :  new 객체생성시 사용되는 자바키워드
Person() 생성자 호출
Person(){}
생성자 : 객체 생성시 호출된다
특징) 1.생성자명은 클래스명과 동일하다
      2.생성자는 리턴타입이 없다
Person() 생성자 호출
클래스 내에서 생성자를 명시하지 않으면
컴파일시에 자동으로 컴파일러가
기본 생성자(default constructor)를 삽입한다
생성자를 명시하는 이유?
객체 생성 직전에 실행해야 하는 일을 정의
ex) object value setting
객체 생성시 특정 조건을 부여 할 수 있다
-> 신용카드 객체에 전달된
개인 정보에서 신용불량등급이 나올 경우
Exception 발생시켜 신용카드 객체 생성을
막을 수 있다
 import : 다른 팩키지의 자원( 클래스 .. ) 을 사용하기 위해 선언하는 자바 예약어
ex) import step6.vo.MemberVO;
//위 코드는 step6 팩키지 하위의
//vo 팩키지 하위의 MemberVO 클래스를
//사용하겠다는 의미
eclipse 단축키 : ctrl + shift + o
java class의 주요 구성요소
package step10; // 팩키지 - 디렉토리별 분류
import step9.Car;// import - 외부 자원 사용
import step8.Animal;
public class MemberVO{// class 정의
    private String name;// instance variable 선언
    public MemberVO(String name){//Constructor 생성자
        this.name= name;
    }
//method
    public String getName(){
        return name;
        }
    }
자바의 데이터 타입
1) primitive data type
byte 1 2 4 8
정수형 byte short int long
실수형 float double
문자형 char
논리형 boolean

정수형의 기본형은 int, 실수형의 기본형은 double
2) reference data type
참조형 데이터 타입은 자바 기본형 데이터 타입을 제외한 모든 타입을 의미한다
참조형 데이터 타입은 일반적으로 클래스명과 동일한다
참조 변수에 저장되는 값은 heap 메모리 영역에서 생성된 객체의 주소값을 의미한다
ex) new Person(); --> 객체 생성 후 주소값 반환
생성한 객체를 이후 코드에서 사용하기 위해서는
변수에 주소값을 할당해야 한다
Person p = new Person();
Person : DataType ( 참조형 데이터 타입)
p : 변수 (참조 변수 or reference variable)