개체 만들기 - 1

"안녕하세요, 또 당신이 가장 좋아하는 선생님이십니다. 당신이 그렇게 큰 발전을 하고 있기 때문에, 나는 당신에게 물체와 그것들을 다루는 방법에 대해 이야기하기로 결정했습니다."

" 객체를 생성하려면 'new'라는 키워드와 유형 이름(클래스 이름)을 차례로 입력해야 합니다. 예를 들어 'Cat'이라는 클래스가 있다고 가정해 보겠습니다."

암호 설명
Cat cat;
cat이라는 Cat 참조 변수를 선언합니다. 변수 cat의 값은 null입니다.
new Cat();
고양이 개체를 만듭니다.
Cat cat = new Cat();
cat이라는 Cat 참조 변수를 만듭니다.
새 Cat 개체를 만듭니다. 새로 생성된 개체에 대한 참조를 변수 cat에 할당합니다.
Cat kitty = new Cat();
Cat smokey = new Cat();
두 개의 객체가 생성됩니다. 그들에 대한 참조는 두 개의 다른 변수에 할당됩니다.
Cat kitty = new Cat();
Cat smokey = new Cat();

smokey = kitty;
두 개의 객체가 생성됩니다. 그들에 대한 참조는 두 개의 다른 변수에 할당됩니다.

그런 다음 변수 smokey를 kitty 변수가 참조하는 개체에 대한 참조와 동일하게 설정합니다. 이제 두 변수 모두 처음 생성된 개체를 참조합니다.
(두 번째 개체는 더 이상 어디에서나 참조되지 않으므로 이제 가비지로 간주됩니다.)

Cat kitty = new Cat();
Cat smokey = null;

smokey = kitty;

kitty = null;
하나의 Cat 개체가 생성되고 이에 대한 참조가 첫 번째 변수(kitty)에 할당됩니다. 두 번째 변수(smokey)는 빈(null) 참조를 저장합니다.

두 변수 모두 동일한 개체를 참조합니다.

이제 키티가 아닌 스모키만 개체를 ​​나타냅니다.

"객체를 만들고 변수에 참조를 저장하지 않으면 어떻게 될까요?"

"객체를 변수에 할당하지 않고 그냥 생성하면 Java 머신이 객체를 생성한 다음 가비지(사용하지 않는 객체)로 선언합니다. 잠시 후 객체는 가비지 수집 중에 폐기됩니다. "

"더 이상 필요하지 않은 물건은 어떻게 처분하나요?"

"그렇지 않습니다. 어떤 변수도 개체를 참조하지 않는 즉시 쓰레기로 레이블이 지정되고 다음에 쓰레기를 수집할 때 Java 시스템에 의해 파괴됩니다. "

개체에 대한 참조가 하나 이상 있는 한 활성 상태로 간주되며 소멸되지 않습니다. 개체를 더 빨리 폐기하려면 해당 개체를 참조하는 모든 변수에 null을 할당하여 해당 개체에 대한 모든 참조를 지울 수 있습니다.

"그렇구나. 지난 몇 번의 수업에 비하면 꽤 간단해 보이는군."

"디에고는 당신을 위해 밤새도록 일을 생각했습니다. 그는 당신만을 위해 이 특별한 노력을 기울였습니다. 그는 유머 감각이 뛰어납니다."


Codegym University 과정의 일부로 멘토와 함께하는 강의 스니펫. 전체 과정에 등록하십시오.