안녕하세요. pitang입니다.
오늘 배운 내용이 참 많은데 어떻게 정리해야 할지 감이 잘 안 와요ㅠ
하나하나 천천히 알아가 볼게요.
Garbage Collecting
Garbage Collecting 은 말 그대로 쓰레기 수집기이다.
크게 고려하지 않아도 되는 점은 자바에서는 자바 가상 머신이 알아서 메모리를 관리해주기 때문이다.
객체가 더 이상 프로그램에서 사용되지 않으면 스스로 판단해서 메모리를 해제하고 수거한다.
패키지(package)
이론적인 말보다는 그냥 폴더라고 생각하면 된다. 폴더를 자바에서는 패키지라고 부르는 것이다.
개발자가 직접 만들어 사용하는 사용자 정의 클래스와 JDK안에 포함되어 있거나, 다른 개발자들이 미리 만들어 놓은 클래스가 있다.
패키지 이름은 소문자로 지정하는 것을 권장한다. 그리고 자바의 키워드들은 패키 이름으로 사용할 수 없다.
현재 클래스에서 다른 패키지의 외부 클래스를 사용하고 싶은 경우 import 전체 경로(패키지 명까지 포함) 지정해주면 된다.
만약 해당 패키 안에 들어있는 모든 클래스를 사용하고 싶다면 * 기호를 넣어주면 된다. import java.utill.*;
클래스의 가장 윗부분에 그리고 선언부 아래 import 선언하면 사용할 수 있다.
ex)
com.abc와 com.def는 컴퓨터 내의 폴더 워크스페이스에 가면 com이라는 폴더에 같이 들어가 있는 것을 볼 수 있다.
이처럼.(dot)을 이용해 대분류와 소분류 패키지를 구분한다.
데이터 타입
데이터 타입은 기본 타입과 참조 타입이 있다.
기본 타입 - 정수, 실수, 문자, 논리 값을 저장하는 데이터 타입
참조 타입 - 객체의 주소를 참조하는 타입으로 배열, 클래스, 인터페이스 타입을 말한다.
기본 타입 - 선언된 변수는 실제 값을 변수 안에 저장
참조 타입 - 선언된 변수는 메모리의 주소 값을 변수 안에 저장
참조 타입으로 선언된 변수는 스택 영역에 주소 값을 저장하고 내부의 실제 값은 힙 영역에 저장한다.
ex1)
참조 타입 String과 객체 동등 비교 메서드는 equals()이다.
전에 잠깐 equals()라는 메서드를 본 적이 있는데 자바는 문자열이 동일하다면 String 객체를 공유하도록 되어있다.
그렇기에 단순히 문자열을 String 변수에 할당한다면 같은 주소 값을 가지게 된다.
동일 String 객체이든 다른 String 객체이든 상관없이 문자열의 내용 값 그 자체를 비교할 때는 equals() 메서드를 사용해야 한다.
ex2)
String 객체를 직접 힙 영역에 생성한다면 문자열의 내용이 같더라도 다른 주소 값을 가지게 되므로 동등, 비동등 연산자의 결과가 false로 나오게 된다.
아직 10일 차 끝이 나지 않았어요!
다음에는 객체지향 프로그래밍 기술 중 상속과 오버 라이딩을 알아보겠습니다.
감사합니다.
*m1 맥북을 사용 중입니다.*
'6개월 대장정 > JAVA 개념' 카테고리의 다른 글
11일차 - 오버 로딩, this와 super, 접근 제한자(상속) (0) | 2021.08.30 |
---|---|
10일차 - 상속, 오버라이딩 (0) | 2021.08.26 |
9일차 - 객체와 클래스 (0) | 2021.08.25 |
8일차 - 메서드(method)(3) (0) | 2021.08.25 |
8일차 - 메서드(method)(2) (0) | 2021.08.24 |