Programer/Android (Java)

JAVA 클래스 - Part 1

아즈샤 2013. 6. 18. 23:20
반응형
요즘 클라라가 이슈인데요. 저도 참 좋아합니다. 갑자기 클래스 하니까 생각이 나네요.
JAVA에서 클래스를 이해하면 절반을 배웠다는 이야기가 있습니다.

저도 아직 클래스에 대해 100% 이해했다고는 자신하지는 못하는데요. 최대한 쉽게 정리를 해 보도록 하겠습니다.


1. 클래스 기본


전에 배웠던 기본 데이터 타입은 하나의 데이터만 할당할 수 있습니다.

그러한 한계를 극복하고자 C언어의 구조체가 탄생되었고, 그것을 발전시켜 JAVA의 클래스가 만들어지게 되었습니다.


즉, 클래스는 구조체 + 매소드로 이루어진 사용자 정의 데이터 타입이라고 할 수 있습니다.

  1. public class Person {   
  2.     public int age;   
  3.     public float height;   
  4.     public float weight;   
  5. }  

위는 Person 이라는 클래스의 예제 입니다.


a. class 는 클래스를 선언하는 키워드 입니다. (public 은 나중에 배우겠지만 접근 제어라는 것만 알아 둡시다.)

b. Person 은 클래스의 이름이 되며, 새로운 데이터 타입의 이름이 됩니다. (그래서 사용자 정의 데이터 타입이라고 하는 것입니다.)

c. age, height, weight 는 데이터 타입 내의 멤버라고 합니다.


자 클래스를 만들었으니 변수를 선언하고 메모리에 할당을 해야겠죠!

클래스의 선언은 다음과 같이 합니다.

  1. Person brother;  

Person 이라는 클래스(사용자 정의 데이터 타입)로 brother 라는 변수를 선언했습니다. 

너무 쉽나요? 하지만 여기 중요한 사실이 있습니다.


클래스는 변수를 선언해도 메모리가 생성되지 않기 때문에 별도의 메모리 생성 과정을 거쳐야 합니다. (기본 데이타 타입은 선언만 해도 메모리가 생성됩니다.)

  1. Person brother; //변수의 선언  
  2. brother = new Person(); //메모리의 생성  

두번째 줄처럼 new 연산자를 이용해야 메모리를 가진 변수가 생성됩니다.

  1. Person brother = new Person();  

위와 같이 한번에 선언과 메모리 할당을 할 수 있습니다.


다음은 클래스 맴버에 값을 할당하는 방법입니다.

  1. Person brother = new Person(); 
  2. brother.age = 20;  
  3. brother.height = 170.0F;  
  4. brother.weight = 67.5F;  
  5.    
  6. Person sister = new Person();  
  7. sister.age = 15;  
  8. sister.height = 165.3F;  
  9. sister.weight = 51.0F;  

생성된 클래스 변수의 맴버에 값을 할당하는 방법은 '.' 통해 할 수 있습니다. 


결론은 클래스 역시 데이터 타입이라고 할 수 있으며, 기본 데이터 타입과 다른 접은 별도의 메모리 생성 과정이 필요하다는 점입니다.


지금까지 클래스의 기본 중에 기본을 정리해 봤는데, 다음 포스팅에서는 좀 더 디테일하게 들어가 보도록 하겠습니다.

반응형

'Programer > Android (Java)' 카테고리의 다른 글

JAVA 클래스 - Part 3  (0) 2013.06.25
JAVA 클래스 - Part 2  (0) 2013.06.24
JAVA 데이터 타입  (0) 2013.06.13
[JSP] SQL 연동 기본 개념  (0) 2012.11.12
[JSP] 개발 환경 설정 (PC 교체시)  (0) 2012.11.12