1. 클래스 작성(설계도 작성)
class Tv {
String color; // 색깔
boolean power; // 전원상태
int channel; // 체널
void power() { power = !power; }
void channelUp() { channel++;}
void channelDown() { channel--;}
}
2. 객체의 생성 (제품 생성)
클래스명 변수명; // 클래스의 객체를 참조하기 위한 참조변수를 선언
변수명 = new 클래스명(); // 클래스의 객체를 생성 후, 객체의 주소를 참조변수에 저장
Tv t; // Tv클래스 타입의 참조변수 t를 선언
t = new Tv(); // Tv인스턴스를 생성한 후, 생성된 Tv인스턴스의 주소를 t에 저장
3. 객체의 사용 (제품 사용) = 객체가 가진 변수&메소드를 사용하는 것
t.channel = 7;
t.channelDown();
System.out.println("현재 체널은 " + t.channel + " 입니다");
Tv t; // Tv클래스 타입의 참조변수 t를 선언
t = new Tv(); // Tv인스턴스를 생성한 후, 생성된 Tv인스턴스의 주소를 t에 저장 = TV객체 생성
객체가 만들어지면 메모리가 만들어진다. new연산자가 Tv라는 객체를 생성하고 그 객체 주소를 알려주고 그 주소가 대입연산자에 의해 t에 저장된다.
Tv객체를 다룰 때에는 반드시 Tv리모콘(참조변수 t)를 통해서만 제어할 수 있다.
Tv 클래스의 맴버는 총 6개이다.(Tv라는 객체는 6개의 구성요소로 이루어져있다. (변수3개, 메소드3개)

Tv t1 = new Tv();
Tv t2 = new Tv();
t1.channel = 7;

System.out.println("t1의 channel값은 " + t1.channel + "입니다.");
System.out.println("t2의 channel값은 " + t2.channel + "입니다.");
[출력화면]
7
0
객체가 가진 맴버를 사용한다 (맴버 ='변수'와 '메소드')
public static void main(String[] args) {
Tv t;
t = new Tv();
t.channel = 7;
t.channelDown();
System.out.println("현재 채널은" + t.channel + " 입니다.");
}
[출력화면]
현재 채널은 6 입니다
인스턴스는 참조변수를 통해서만 다룰 수 있으며, 참조변수의 타입은 인스턴스의 타입과 일치해야한다.
같은 클래스로부터 생성되었을지라도 각 인스턴스의 속성(멤버변수)은 서로 다른 값을 유지할 수 있으며, 메서드의 내용은 모든 인스턴스에 대해 동일하다.