달력

2

« 2025/2 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
2017. 7. 2. 21:35

java 자바 객체생성 C. Java2017. 7. 2. 21:35

객체 생성            

- 클래스에서 정의에 따라 실질적으로 데이타를 저장할수 있는 기억공간을 메모리에 할당하는것을 

  객체생성이라고 한다.                    
  ( 인스턴스 생성 )
 
 
객체 생성 방법
- new연산자 를 이용하여 객체를 생성한다.

  기본자료형(int, short...)은 변수선언에 의해 실제 데이타를 저장할 공간이 생기지만,
   ex) int a; a=5;

   클래스 자료형은 레퍼런스형이어서 변수선언으로 스택메모리 공간에 레퍼런스 변수가 할당되어
   값을
  저장하지 못하고  new연산자를 사용하여 객체선언을 해야한다.
   ex) Animal(클래스) a;                     
         a = new Animal();                  
 
          
- 자바에서 제공되는 기본자료형(int...)들을 제외한 자바의 모든 자료형은 객체를 제공한다.
  이러한 자료형들은 객체를 참조하는 변수이기 때문에 레퍼런스 변수라고 한다.
 
  ex) Animal(클래스) a;           -> 레퍼런스 변수 선언: 스택영역에 객체의 주소만을 관리할수 있는
                                                                            레퍼런스 변수만 생성           
        a = new Animal();         -> 레퍼런스 변수가 힙영역을 가르키게 함. 힙영역에 접근하여
                                               데이터를 저장할수 있다  =>  Animal a = new Animal(); 
 
 
- 레퍼런스 변수를 선언만 하고 초기화 를 해주지 않은 상태에서 변수의 값을 출력하려고 하면
   컴파일 에러가 난다.
   초기화가 된 레퍼런스 변수만이 프로그램에서 사용가능한다.
   만일 객체생성을 하려다가 실패를 할 경우에는 null값이 레퍼런스 변수에 저장되는데
   이런경우에는 컴파일시에는 별 문제 없지만 실행시에 에러가 발생한다.
 
 
 


'C. Java' 카테고리의 다른 글

아스키 코드표  (0) 2017.07.02
JVM (java virtual machine) 구조  (0) 2017.07.02
java 자바 JDBC  (0) 2017.07.02
java 자바 생성자 this  (0) 2017.07.02
java 자바 바인딩 개념  (0) 2017.07.02
:
Posted by sfeg