클래스와 객체의 정의
클래스는 밀접한 관계가 있는 변수(속성),메서드(행위)들을 모아놓은 것이다.
개념적 의미로 보자면 하나의 틀이나 설계도로 볼 수 있다.
틀을 하나 만들어놓고 그 틀로 실체를 구현하는게 객체이다.
클래스는 어떤 경우에 사용하는가?(사용하는 이유)
클래스라는 틀을 하나 만들어놓으면 실체(객체)를 뽑아내기가 쉽기 때문이다.
하나의 클래스만 있으면 그것으로 수많은 객체를 손쉽게 구성할 수 있다.
붕어빵을 하나 하나 일일히 빚는것보다 틀을 하나 만들어놓으면 붕어빵을 만들어내기가
더 쉽듯이 말이다. String이라는 클래스를 만들어 놓으면 문자열을 얼마든지 계속 만들어
낼 수가 있고, Math라는 클래스를 만들어 놓으면 언제든지 Math.round()나
Math.random()등 원하는 기능을 얼마든지 손쉽게 쓸 수 있는것과 같은것이다.
클래스와 객체의 사용 방법
클래스안에 밀접한 관계가 있는 변수들과 메서드들을 구성한다.
그리고 그 클래스에 대한 객체(인스턴스)를 만들고자 할때는
클래스명 변수명 = new 클래스명(); 이런식으로 사용하면 된다.
Drink cola = new Drink();
Drink fanta = new Drink();
Drink water = new Drink();
cola, fanta, water는 같은 클래스를 통해 만들어 졌지만 완전히 다른 객체이다.
이렇게 만들어진 변수로 Drink란 클래스에 접근할 수 있다.
cola.sugar = “백설탕”; (Drink클래스에 있는 sugar변수에 백설탕이란 문자열을 대입)
fanta.drinking(); (Drink클래스에 있는 drinking()메서드를 실행)
cola.sugar = “백설탕”; 을 한다고해서 fanta로 만들어진 객체에는 아무 영향이 없고,
fanta.drinking(); 을 한다고해서 cola로 만들어진 객체에 있는 drinking();이 실행되는게 아니다.
둘은 완전히 다른 객체에 접근하는 것이다.