Java
-
[JAVA] 생성자, Getter&Setter, BuilderJava 2024. 5. 16. 08:11
생성자 (Constructor)생성자는 객체가 생성될 때 호출되는 객체 초기화 메서드이다.인스턴스 변수의 초기화 작업에 주로 사용되며, 인스턴스 생성 시에 실행되어야 할 작업을 위해서도 사용된다.생성자에서 초기값을 세팅해 주었어도 언제든 값을 바꿀 수 있다.메서드처럼 클래스 내에 선언되며, 구조도 메서드와 유사하지만 리턴값이 없다.조건메서드 이름과 클래스 이름이 동일해야 한다.클래스로부터 객체를 생성할 때 어떤 클래스의 생성자를 호출할지 결정하는 데 사용되기 때문이다반환 타입이 없거나 void 이여야 한다.생성자가 호출될 때 객체가 생성되고, 새로운 인스턴스에 대한 참조가 반환되기 때문이다.생성자는 오버로딩 될 수 있다.하나의 클래스에 여러 개의 생성자를 정의할 수 있고, 이를 통해 다양한 매개변수 조합..
-
[JAVA] Wrapper Class (래퍼 클래스)Java 2024. 5. 13. 21:19
Wrapper Class(래퍼 클래스)자바의 기본 타입을 클래스 화한 변수형 객체로써 변수를 객체처럼 활용하기 위해 사용된다.int, double, boolen등은 객체가 아니다 그러므로 객체로 다루어야 할 때 사용한다.예를 들어, 객체 기반의 컬렉션에서 기본 데이터 유형을 사용하기위해 Wrapper클래스를 사용한다.래퍼 클래슨느 각각의 타입에 해당하는 데이터를 인수로 전달받은 후, 해당 값을 가지는 객체로 만들어 준다.즉 기본 타입을 객체 형태로 '포장'하는 것을 의미한다.로직이 필요하거나 컬렉션, 제네릭 활용으로 타입 안정성을 보장하기 위해서 사용된다.넓은 범위의 유틸리티 메서드를 활용할 수 있다.java.lang 패키지에서 제공된다. 기본타입 | 래퍼 클래스 byte | Byteshort | Sho..
-
[JAVA] 컬렉션 프레임워크 (Collection Framework)Java 2024. 5. 12. 03:37
컬렉션(Collection)여러 객체(데이터)를 담을 수 있는 자료구조, 다수의 데이터 그룹 또는 집합을 의미한다.프레임워크(Framework)복잡하게 설명할 수 있지만 간단하게 표준화된 프로그래밍 방식을 의미한다.컬렉션 프레임워크 (Collection Framework)켈렉션 프레임워크란 데이터 그룹을 지정하는 클래스들을 표준화한 설계이다.컬렉션 프레임워크를 활용하면 객체 지향적이고 재사용성이 높은 코드를 작성할 수 있다.JDK 1.2버전 부터 java.util 패키지에서 지원하기 시작하였고 이전에는 Vector, Properties, Stack, Hash Tables, Dictionary와 같은 것들이 존재하였으나 통일성이 없고 표준화된 인터페이스가 존재하지 않았다 CollectionFramework..
-
[JAVA] 오버라이딩 (Overriding), 오버로딩 (Overloading) 개념 및 차이점Java 2024. 5. 12. 00:22
오버라이딩 (overriding)부모 클래스로부터 상속받은 메서드를 자식 클래스에서 재정의 하는 것.상속받은 메서드를 그대로 사용할 수도 있지만. 자식 클래스에서 상황에 맞게 변경해야하는 겅우 오버라이딩할 필요가 생긴다.오버라이딩의 조건부모 클래스의 메서드를 재정의하는 것으로 메소드의 이름이 일치해야 한다.메소드 매개변수의 개수, 순서 그리고 데이터 타입이 일치해야 한다.메서드의 return 타입이 일치해야 한다.@Override는 어떤 용도인가?검증하는 기능을 한다.오버라이딩을 검증하는 기능을 한다.부무 클래스의 메서드를 오버라이딩 하는 것은 내용만을 새로 정의하는 것이므로 선언부는 부모의 것과 완벽히 동일해야 한다.부모의 메서드의 이름만 빌려와서 자기의 방식대로 재정의하는것을 오버라이딩이라고 한다.오..
-
[JAVA] 추상 클래스와 인터페이스의 개념 및 차이Java 2024. 5. 8. 08:32
추상 클래스 (Abstract Class)주로 클래스들의 공통되는 필드와 메서드를 정의한 클래스이다.추상 메소드를 선언하여 상속을 통해서 자손 클래스에서 완성하도록 유도하는 클래스이다.인스턴스를 직접 생성할 수 없고, 하위 클래스에 의해 확장 및 구현되어야 한다.추상클래스는 메서드의 선언만 있고 구현이 없는 추상 메서드를 포함할 수 있다.상속을 위한 클래스이기 때문에 따로 객체를 생성할 수 없다.추상 클래스의 특징추상 클래스는 클래스 앞에 abstract 키워드를 이용해서 정의한다.추상클래스는 미완성의 추상 메서드를 포함할 수 있다.추상 메소드란, 내용이 없는 메서드이다. 즉, 구현이 되지 않은 메서드이다.추상 클래스는 인스턴스를 생성할 수 없다, 자체적으로 객체를 생성할 수 없다.따라서, 상속을 통해 ..
-
[JAVA] 클래스, 객체, 인스턴스의 개념 및 차이점Java 2024. 5. 3. 23:05
클래스(Class)객체를 만들기 위한 설계도 또는 틀이다.객체가 가져야 하는 속성(attribute)과 행동(method)을 정의한다.Ex) '사람'클래스는 이름, 나이, 성별과 같은 속성을 가지며, '먹다', '잠자다'와 같은 행동을 할 수 있도록 정의될 수 있다.클래스는 객체를 생성하기 위한 틀이지만, 실제 데이터를 가지지 않는다.객체(Object)객체는 클래스로부터 생성된 실제 데이터이다.클래스에 정의된 속성과 행동을 가지며, 실제 프로그램에서 사용될 수 있다.Ex) '사람'클래스의 객체는 실제 사람인 '철수', '영희'등이 될 수 있다.객체는 실제로 메모리에 할당되어 사용된다.인스턴스(instance)인스턴스는 클래스로부터 생성된 특정한 객체를 의미한다.'클래스의 인스턴스'라고도 한다.클래스로부터..