다형성이란? 다형성은 Java에서 객체 지향 프로그래밍의 기본 개념 중 하나입니다. 다양한 형태나 유형을 취할 수 있는 객체의 능력을 나타냅니다. 서로 다른 클래스의 개체를 공통 상위 클래스의 개체인 것처럼 처리할 수 있습니다. 굉장히 추상적인 설명이기 때문에 예제를 확인하는 것이 베스트 입니다. 예제 overloading class O{ public void a(int param){ System.out.println("숫자출력"); System.out.println(param); } public void a(String param){ System.out.println("문자출력"); System.out.println(param); } } public class PolymorphismOverloading..
상속 - 법률 용어 일정한 친족 관계가 있는 사람 사이에서, 한 사람이 사망한 후에 다른 사람에게 재산에 관한 권리와 의무의 일체를이어 주거나, 다른 사람이 사망한 사람으로부터 그 권리와의무의 일체를 이어받는 일. Java에서 상속이란? 부모 클래스(상위 클래스)와 자식 클래스(하위 클래스)가 있으며, 자식 클래스는 부모 클래스를 선택해서, 그 부모의 멤버를 상속받아 그대로 쓸 수 있게 됩니다. 부모 클래스의 private 접근 제한을 갖는 필드 및 메소드는 자식이 물려받을 수 없습니다. 부모와 자식 클래스가 서로 다른 패키지에 있다면, 부모의 default 접근 제한을 갖는 필드 및 메소드도 자식이 물려받을 수 없습니다. (default 접근 제한은 ‘같은 패키지에 있는 클래스’만 접근이 가능하게끔 하..
배열이란? 동일한 자료형(Data Type)의 데이터를 연속된 공간에 저장하기 위한 자료구조입니다. 배열은 하나의 블록안에 여러 데이터들을 모아 집합시켜 저장함으로써 데이터를 구조적으로 다루는데 도와줍니다. 배열을 구성하는 각각의 값을 배열 요소(element)라고 하며, 배열에서의 위치를 가리키는 숫자를 인덱스(index)라고 칭합니다. 배열 선언과 초기화 자바(Java)의 배열은 코드를 보면 볼 수 있듯이 배열을 선언할때 미리 공간의 갯수(길이)를 지정해야 합니다. 이는 곧 공간의 제약이 생겨 데이터를 저장하는데 애로사항이 있을 수 있다는 뜻이기도 합니다. 자바스크립트나 파이썬의 배열 같은 경우 유기적으로 늘어나는 특성 때문에 배열에 데이터를 저장하는데 있어 공간을 따진적이 없었기 때문에 적응이 힘들..
UML 다이어그램이란? 통합 모델링 언어를 사용하여 시스템 상호작용, 업무흐름, 시스템 구조, 컴포넌스 관계 등을 그린 도면입니다. UML다이어 그램을 사용하는 이유는 프로그래밍을 단순화시켜 표현하여 의사소통하기 좋고 또 대규모 프로젝트 구조의 로드맵을 만들거나 개발을 위한 시스템 구축에 기본을 마련합니다. 확실히 개발전에 다이어그램을 사용해서 구조가 어떻게 생겼나 생각하고 그려본 후 코딩을 하게 되면 훨씬 깔끔하고 빠르게 개발이 되는 것을 느꼈습니다. 그런데 다이어그램 종류가 이렇게 많을 줄은 몰랐네요. 자린이는 아직 Class Diagram밖에 모르는데... 일단 Class Diagram 부터 알아보죠. 아 그리고 Star UML이라는 것을 다운로드 하시면 제 글을 이해하는데 도움이 될 겁니다. ht..
변수의 타입 변수란? 값이 저장되어 있는 메모리 공간을 의미합니다. 자바에서 변수 타입은 기본적으로 기본형과 참조형으로 구분되는데, 기본형은 변수의 메모리 공간에 값 자체가 할당되는 것이며, 참조형은 변수의 메모리 공간에 해당 값이 저장된 주소가 저장됩니다. * 상수 한 번 값을 할당한 후 다른 값을 할당할 수 없는 변수를 의미합니다. 상수는 값의 재할당이 불가능하기 때문에 기본적으로 변수의 선언과 함께 값의 초기화가 이루어져야 합니다. 상수로 선언한기 위해서는 변수의 타입 앞에 final을 붙여주면 됩니다. 기본형(Primitive Type) 기본형 타입으로는 문자형(char), 숫자형(byte, short, int, long), 실수형(float, double), 논리형(boolean)이 있으며, 변..
this란? 자바에서 this 는 인스턴스 자기 자신을 가리키는 키워드입니다. this 를 통해 클래스 메소드 및 생성자에서 자기 자신의 데이터를 업데이트하거나 조작할 수 있습니다. this 는 클래스를 기반으로 생성된 인스턴스를 가리키는 참조 라는 것입니다. 여기서 중요한 부분은 인스턴트를 가리키는 참조와 인스턴스 자체는 다르다는 점입니다. this가 생성자에 사용될 때가 가장 많은 것 같아서 생성자에서 사용되는 예로 살펴보겠습니다. 예시를 통한 이해 1. 클래스의 속성과 생성자/메소드의 매개변수의 이름이 같은 경우 public class Fruit { public String name; public String color; public double weight; public int count; pub..