"안녕하세요, 또 당신이 가장 좋아하는 선생님이십니다. 당신이 그렇게 큰 발전을 하고 있기 때문에, 나는 당신에게 물체와 그것들을 다루는 방법에 대해 이야기하기로 결정했습니다."
" 객체를 생성하려면 'new'라는 키워드와 유형 이름(클래스 이름)을 차례로 입력해야 합니다. 예를 들어 'Cat'이라는 클래스가 있다고 가정해 보겠습니다."
암호 | 설명 |
---|---|
|
cat이라는 Cat 참조 변수를 선언합니다. 변수 cat의 값은 null입니다. |
|
고양이 개체를 만듭니다. |
|
cat이라는 Cat 참조 변수를 만듭니다. 새 Cat 개체를 만듭니다. 새로 생성된 개체에 대한 참조를 변수 cat에 할당합니다. |
|
두 개의 객체가 생성됩니다. 그들에 대한 참조는 두 개의 다른 변수에 할당됩니다. |
|
두 개의 객체가 생성됩니다. 그들에 대한 참조는 두 개의 다른 변수에 할당됩니다.
그런 다음 변수 smokey를 kitty 변수가 참조하는 개체에 대한 참조와 동일하게 설정합니다. 이제 두 변수 모두 처음 생성된 개체를 참조합니다. |
|
하나의 Cat 개체가 생성되고 이에 대한 참조가 첫 번째 변수(kitty)에 할당됩니다. 두 번째 변수(smokey)는 빈(null) 참조를 저장합니다.
두 변수 모두 동일한 개체를 참조합니다. 이제 키티가 아닌 스모키만 개체를 나타냅니다. |
"객체를 만들고 변수에 참조를 저장하지 않으면 어떻게 될까요?"
"객체를 변수에 할당하지 않고 그냥 생성하면 Java 머신이 객체를 생성한 다음 가비지(사용하지 않는 객체)로 선언합니다. 잠시 후 객체는 가비지 수집 중에 폐기됩니다. "
"더 이상 필요하지 않은 물건은 어떻게 처분하나요?"
"그렇지 않습니다. 어떤 변수도 개체를 참조하지 않는 즉시 쓰레기로 레이블이 지정되고 다음에 쓰레기를 수집할 때 Java 시스템에 의해 파괴됩니다. "
개체에 대한 참조가 하나 이상 있는 한 활성 상태로 간주되며 소멸되지 않습니다. 개체를 더 빨리 폐기하려면 해당 개체를 참조하는 모든 변수에 null을 할당하여 해당 개체에 대한 모든 참조를 지울 수 있습니다.
"그렇구나. 지난 몇 번의 수업에 비하면 꽤 간단해 보이는군."
"디에고는 당신을 위해 밤새도록 일을 생각했습니다. 그는 당신만을 위해 이 특별한 노력을 기울였습니다. 그는 유머 감각이 뛰어납니다."
Codegym University 과정의 일부로 멘토와 함께하는 강의 스니펫. 전체 과정에 등록하십시오.
GO TO FULL VERSION