반응형

객체 2

[Clean Code] 6. 객체와 자료구조 - 클린 코드 정독하기

변수를 private로 정의하는 이유는 남들이 변수에 의존하지 않게 만들고 싶어서다. 충동이든 변덕이든, 변수 타입이나 구현을 마음대로 바꾸고 싶어서다. 그렇다면 왜 get 함수(getter)와 set 함수(setter)를 당연하게 공개(public)해 비공개 변수를 외부에 노출할까? 자료 추상화 다음 두 클래스는 2차원 점을 표현한다. 그런데 한 클래스는 구현을 외부로 노출하고 다른 클래스는 구현을 완전히 숨긴다. // 구체적인 Point 클래스 public class Point { public double x; public double y; } // 추상적인 Point 클래스 public interface Point { double getX(); double getY(); void setCartesi..

[Java] 자바 클래스와 객체, 인스턴스 개념 정리 및 활용

클래스 (Class) 클래스란 객체를 정의한 설계도 또는 틀이라 정의할 수 있다. 즉, 클래스는 객체를 생성하는 데 사용된다. 반대로 객체는 클래스에 의해 정의되고 설계된 내용을 기반으로 생성된다. 또한, 클래스로부터 객체를 만드는 과정을 인스턴스화(Instanctiate)라 한다. 클래스와 객체의 관계는 제품의 설계도와 제품과의 관계와 유사하다. 제품 설계도 없이는 제품을 만들 수 없고, 제품 또한 제품 설계도 없이 만들 수 없기 때문이다. 객체 (Object) 사람과 동물, 물품, 어떤 논리나 사상, 개념, 철학 등과 같이 눈으로 볼 수 있는 것부터 볼 수 없는 것까지 객체의 범주에 포함될 수 있다. 즉, 객체는 우리가 보고 느끼며 인지할 수 있는 모든 것을 의미한다. 객체는 클래스에 의해 정의되고 ..

반응형