뇌운동일지

[JAVA06] class 본문

JAVA

[JAVA06] class

purpleduck 2020. 3. 13. 11:27

<클래스>

1. 자바 프로그램의 기본 단위 

2. 클래스의 이름과 저장파일명은 동일 

3. 하나의 소스에 여러개의 클래스를 정의할 수 있음 

4. public이 붙어있는 클래스의 이름으로 저장한다. 

5. 컴파일하면 클래스 파일은 각각 생성된다. 

6. public 클래스 안에 main 함수를 정의 



소스코드를 컴파일하면 클래스가 만들어짐

[A.java] ---compile---> [A.class] ----실행--->



컴파일한다 : 문자코드를 바이트코드로 바꾸어주는 것 



소스는 하나인데 클래스를 여러개 정의할 수 있다. 



소스의 이름과 클래스의 이름은 동일해야 함. 



class A { 
	class B { 
     
    } 
} 


A.class

A$B.class

-> 클래스 안에 클래스를 정의하는 경우, 내포클래스



클래스는 변수들과 메소드들로 구성되어있다. 

변수 -> 저장 

함수 -> 처리



public이 붙어있는 class안에 main 함수 정의 



class를 사용하려면 instance를 생성해야 한다. 

클래스명 객체변수 = new 생성자():     // new는 heap영역에 memory를 할당

객체변수.멤버 

멤버는 변수일수도 메서드일수도 있다. 

class 안의 모든 요소 : member



반복되는 코드를 한번만 존재하도록, memory에는 한번만 존재 -> method

method는 자기 할일을 다하면 메모리에서 사라짐 



<reference의 개념> 

Method Area - Class Area

Heap : 주로 데이터를 보관, 잘 안사라짐 -> 오랫동안 보관 

Stack : method가 실행할 때 사용하는 영역 -> 짧게 보관 



함수 : 한번 처리하면 memory공간에서 바로 사라짐, 사라짐과 나타남을 반복적으로 

함수는 스택에서 실행되고, 변수는 힙에 저장된다. 



파일을 분류하면 무엇이 좋은가 -> 클래스 단위의 재활용이 쉬워짐 

소스가 하나이고, 안에 클래스를 2개 정의 -> 둘 중에 하나에만 public을 붙일 수 있음. 

아무것도 붙지 않은 클래스는 동일한 패키지 안에서만 사용할 수 있다. 



public은 import해서 사용가능 

참조할 수 있는 위치에 있어야 import할 수 있다. 

외부 라이브러리를 참조할 수 있는 위치를 지정하여 사용. 



-재활용

-은닉화 



이용하는 클래스가 처리하는 클래스를 참조하여 사용

처리클래스를 잘 만들어야 간결한 코드를 작성할 수 있다. 



1. 왜 파일을 분리하지 않는가? 은닉화

    왜 파일을 분리하는가? 공유하여 사용하기 위해 

2. 반복되는 코드는 함수화를 시켜라.



클래스 사용시, import -> 인스턴스화 -> member호출

'JAVA' 카테고리의 다른 글

[JAVA02_(2)] 환경변수 설정과 설치확인  (0) 2020.03.13
[JAVA02_(1)] JDK, JRE 설치  (0) 2020.03.13
[JAVA05] Arrays  (0) 2020.03.13
[JAVA04] 삼항연산자, if문, switch문, for문  (0) 2020.03.13
[JAVA03] Data Type, 연산자  (0) 2020.03.13
Comments