객체지향 설계 원칙(SOLID)객체지향 기술은 어느 날 한 번에 만들어진 것이 아니다. 오랜시간에 걸쳐 점진적으로 발전 해온 기술이다.때문에 객체지향 기술을 받아들이고 적용하는 관점과기법에 차이가 조금씩 있다. 객체지향 설계 원칙은 객체지향의 특징을잘 살릴 수 있는 설계의 특징을 말한다.예외는 있겠지만 대부분의 상황에 잘 들어맞는가이드라인과 같은 것이다.디자인 패턴은 특별한 상황에서 발생하는 문제에 대한 좀 더 구체적인솔루션이라고 한다면 객체지향 설계 원칙은 좀 더 일반적인상황에서 적용 가능한 설계 기준이라고 볼 수 있다. 높은 응집도와 낮은 결합도응집도가 높다는 것은 하나의 모듈, 클래스가 하나의책임 또는 관심사에만 집중되어 있다는 것. 높은 응집도응집도가 높다는 것은 변화가 일어날 때 해당 모듈에서변..
이번 글 은 메소드 오버로딩에 대해알아보겠습니다. 메소드 오버로딩은 대부분의 객체지향 언어가지원하는 문법적인 요소입니다이로 인해서 자바에서는 동일한이름의 메소드를 둘 이상 정의할 수 있습니다. 매개변수의 형(type)이 다르거나 개수가 다르거나 기본적으로 동일한 이름의 메소드는정의가 불가능하다고 생각할 것입니다.하지만 매개변수의 선언형태가 다르면동일한 이름의 메소드를 정의할 수 있습니다. 이를 가리켜 메소드 오버로딩이라고 합니다다음은 메소드가 오버로딩 된 예를 보여드리겠습니다 위의 클래스에는 총 세 개의 Func 메소드가정의되어 있습니다. 이렇게 하나의 클래스 안에세 개의 메소드가 정의될 수 있는 이유는 세 메소드상호간에 매개변수의 자료형, 매개변수 개수가다르기 때문입니다. 그렇다면 이렇게 동일한 이름의..
접근제어 지시자(Access Control Specifiers) private과 public 상황에 따라 지시자를 잘 사용해야 된다이들은 접근의 허용 범위를 제한하는용도로 사용이 된다JAVA가 제공하는 접근 제어 지시자는private, public, protected 이렇게세 가지이지만, 아무런 선언도 하지않는 경우까지 포함하여 총 네 가지의 형태의 접근제어선언이 가능하다 private으로 선언되는 인스턴스 변수와 메소드는선언된 클래스 내부에서만 접근이 가능하다반면 public 으로 선언이 되면public 라는 이름이 의미하듯이어디서든 접근이 가능한 인스턴스 변수및 메소드가 된다. 이에 대한 예를 들어보겠다 위 코드에서 클래스 AA의 변수 num은 private으로 선언되어있다.따라서 클래스 BB내에서의..
OOP란?객체지향프로그래밍 이다 (Object Oriented Programming) 우리 들이 프로그래밍을 개발 할때사용하는 언어인 JAVA는 완전한객체 지향 언어이다 우리가 JAVA에 대해 공부를하여프로그래밍을 개발하려면OOP에 대해 어느정도 머릿속에기억 시켜야 할 필요가있다 또한 OOP에 대해서는몇몇 회사에서 취업을 하려할때실제로 면접관들이 물어보기도 한다 OOP는 객체가 주가 되는 객체에 집중되는프로그래밍으로 크게 4가지의 특징을 가진다(캡술화, 추상화, 다형성, 상속성) OOP에대해 짧게 설명하면 "객체지향 프로그래밍이란 캡슐화, 다형성, 상속성, 추상화 등의4가지 특징을 이용해 코드 재사용을증가시키고 유지보수를 감소시키는 장점을 얻기 위해서객체들을 연결 시켜 프로그래밍 하는것 입니다." 캡슐화..