🔰얕은복사(Shallow Copy) : 배열의 주소 값만 복사 (복사한 배열 수정 시, 원 배열도 함께 수정됨)🔰깊은복사(Deep Copy) : 배열의 실제 값을 새로운 메모리 공간에 복사 (원 배열 수정 안됨)원래 배열의 주소 값만 복사복사한 배열을 수정하면 원래
객체 지향 프로그래밍(OOP : Object-Oriented Programming)이란 현실 세계에서 어떤 제품을 만들 때 부품을 먼저 개발하고 이 부품들을 하나씩 조립해서 제품을 완성하듯이 소프트웨어를 개발할 때도 부품에 해당하는 객체를 먼저 만들고 그 객체를 하나씩
int 와 Integer의 차이int(primitive type)산술 연산 가능null로 초기화 불가능(0으로 초기화 가능)Integer(Wrapper 클래스-객체)Wrapper 클래스Unboxing 하지 않으면 산술 연산 불가능, null 값은 처리 가능null값 처
상속은 부모 클래스의 멤버를 자식 클래스에 물려줄 수 있게 하는것이다.잘 개발된 클래스를 재사용해서 새로운 클래스를 만들 수 있도록 한다. => 중복 코드 줄임부모 클래스를 수정하면 모든 자식 클래스들도 수정되는 효과 => 유지보수 시간을 최소화여러 개의 부모 클래스를
추상(abstract)는 실체 간에 공통되는 특성을 추출한 것이다.실체 클래스 설계시 분업 작업을 할 때, 개발자마다 동일한 기능을 모두 다른 이름으로 작성할 때 객체마다 사용 방법이 다름을 방지하기 위해서 공통된 필드와 메소드 이름을 통일한다.공통 필드와 메소드는 추
인터페이스는 개발 코드와 객체가 서로 통신하는 접점 역할을 한다. 인터페이스의 메소드를 호출하면 인터페이스는 객체의 메소드를 호출시킨다. 따라서 개발자는 객체 내부 구조를 알 필요 없이 인터페이스의 메소드만 알고 있으면 된다.인터페이스명은 보통 대문자로 시작하고 형용사
제네릭은 처리해야 할 대상의 자료형에 의존하지 않는 클래스(인터페이스) 구현 방식이다.제네릭 클래스는 자료형에 의존하지 않기 때문에 범용으로 사용이 가능하다.Java에서 지원하는 기능이므로 안전한 방법으로 사용할 수 있다.제네릭 클래스는 클래스 이름 바로 뒤에 <