본문 바로가기

클래스

클래스, 인스턴스, 객체 클래스(Class): 클래스란 어떤 특정 종류의 모든 객체들에 대해 일반적으로 적용할 수 있는 변수와 메소드를 정의하고 있는 소프트웨어적인 설계도(blueprint) 또는 프로토타입(prototype)이라 할 수 있습니다. 예를 들어, 실세계에 존재하는 자동차들인 아반떼, 누비라, 그랜저, 티코, 아토스, 봉고, 또는 버스 등의 자동차들이 가질 수 있는 상태 정보와 행동에 대하여 일반화시켜 정의해 놓은 것이 자동차 클래스가 될 수 있습니다. 다시 말해서, 실세계에 존재하는 객체들이 가질 수 있는 상태와 행동들에 대해 소프트웨어적으로 추상화(abstraction) 해 놓은 것이 클래스라는 것입니다. 이러한 클래스를 청사진이라 표현하기도 하고, 벽돌을 찍기 위한 하나의 틀로써 비유되기도 합니다. 인스턴스(I.. 더보기
[Head First Java] Chapter4 GoodDog 클래스 캡슐화 GoodDog 클래스 class GoodDog { private int size; public int getSize(){ return size; } public void setSize(int s){ size = s; } void bark(){ if(size > 60){ System.out.println("Wooof! Wooof!"); } else if(size > 14){ System.out.println("Ruff! Ruff!)"); } else{ System.out.println("Yip! Yip!"); } } } GoodDogTestDrive 클래스 class GoodDogTestDrive { public static void main(String[] args) { GoodDog one = new .. 더보기
[Head First Java] Chapter4 크기와 짖는 소리 Dog 클래스에는 size라는 인스턴스 변수가 있는데, bark() 메소드에서 이 값을 이용하여 짖는 소리를 결정할 수 있다.. 소스 class Dog { int size; String name; void bark(){ if(size > 60){ System.out.println("Wooof! Wooof!"); } else if(size > 14){ System.out.println("Ruff! Ruff!"); } else{ System.out.println("Yip! Yip!"); } } } public class DogTestDrive { public static void main(String[] args) { Dog one = new Dog(); one.size = 70; Dog two = new .. 더보기
[Head First Java] Chapter2 객체지향적 프로그래밍 핵심 정리 제작과 테스트가 끝난 코드를 건드리지 않고 프로그램을 확장할 수 있다. 모든 자바 코드는 클래스 내에서 정의 된다. 클래스는 해당 클래스 유형의 객체를 만드는 방법을 설명하는 역할을 한다. 객체는 각자 알아서 자기 할 일을 처리할 수 있다. 객체에는 알고 있는것(속성)과 할 수 있는 것(메소드)이 있다. 객체가 자기 자신에 대해 알고 있는 것은 인스턴스 변수이다. 객체가 할 수 있는 것은 메소드라고 부른다. 클래스를 새로 만들 때는 그 클래스 유형의 객체를 만들어서 테스트하는 테스트용 클래스를 따로 만들어 보는 것이 좋다. 클래스에서는 덜 구체적인 상위클래스로부터 인스턴스 변수와 메소드를 상속할 수 있다. 프로그램을 실행시킬 때 보면 자바 프로그램이란 결국 다른 객체와 대화를 하는 객체에 불과하다. 더보기