개발19 자바 인터페이스 자바에서 인터페이스는 클래스가 구현해야 하는 행동의 규약을 정의합니다. 인터페이스는 메서드의 시그니처(이름, 매개변수 리스트, 반환 타입)와 상수만을 포함할 수 있으며, 이를 통해 클래스의 행동을 추상화하고 규정합니다. 인터페이스의 특징 1. 다중 상속 가능: 인터페이스는 다중 상속을 지원합니다. 클래스는 여러 인터페이스를 구현할 수 있으며, 이를 통해 다형성과 유연성을 확보할 수 있습니다. 2. 추상 메서드와 상수만 사용 가능: 인터페이스에는 구현된 메서드(실체 메서드)를 포함할 수 없으며, 모든 메서드는 기본적으로 public abstract입니다. 상수는 public static final이어야 합니다. 3. 생성자 사용 불가: 인터페이스는 객체를 생성할 수 없으므로 생성자를 가질 수 없습니다. 메.. 2024. 4. 6. 자바 제네릭 타입 자바에서 제네릭(Generic)은 클래스, 인터페이스, 메소드를 정의할 때 타입(Type)을 파라미터로 사용할 수 있게 해주는 기능입니다. 제네릭을 사용함으로써 다양한 타입의 객체들을 다룰 수 있는 코드를 더 안전하고, 명확하게 작성할 수 있습니다. 제네릭의 가장 큰 장점은 컴파일 시점에 타입 체크를 할 수 있어 런타임에 발생할 수 있는 타입 관련 에러를 사전에 방지할 수 있다는 점입니다. 제네릭의 목적: 타입 안정성을 높이고, 타입 변환(casting)을 줄여 코드의 재사용성과 가독성을 향상시킵니다. 기본 문법: 클래스나 인터페이스 이름 뒤에 와 같이 타입 파라미터를 추가합니다. T는 타입 변수로, 실제 타입으로 대체되어 인스턴스 생성 시 사용됩니다. // 제네릭 클래스 예제 public class B.. 2024. 4. 5. 중첩 클래스와 중첩 인터페이스 자바에서 중첩 클래스와 중첩 인터페이스는 코드의 가독성과 유지보수성을 높이기 위해 사용됩니다. 이들은 특정 클래스 내부에 위치하여, 외부에서는 접근하기 어려운 구조를 가지고 있어 코드의 캡슐화를 강화할 수 있습니다. 중첩 클래스(Nested Classes) 중첩 클래스는 크게 네 가지로 분류됩니다. 내부 클래스(Inner Classes): 클래스 내부에 선언되며, 외부 클래스의 멤버 변수처럼 사용됩니다. 비정적(non-static)으로 선언되며, 외부 클래스의 인스턴스에 종속적입니다. 정적 중첩 클래스(Static Nested Classes): 내부 클래스와 비슷하지만, static으로 선언됩니다. 이 클래스는 외부 클래스의 인스턴스 없이도 사용할 수 있습니다. 지역 클래스(Local Classes): .. 2024. 4. 5. [c#]프로퍼티와 이벤트 C#에서 프로퍼티와 이벤트는 객체 지향 프로그래밍의 핵심 요소입니다. 프로퍼티는 클래스의 데이터를 보호하면서 외부에서 접근할 수 있게 해주고, 이벤트는 특정 사건이 발생했을 때 알림을 받을 수 있는 메커니즘을 제공합니다. 프로퍼티(Property) - 개념: 클래스 내부의 변수(필드)에 대한 접근을 제어하는 메커니즘. get과 set 접근자를 통해 필드의 값을 읽거나 쓸 수 있습니다. - 사용 예제: class Person { private string name; // 필드 // 프로퍼티 public string Name { get { return name; } set { name = value; } } } 이 예제에서 Name은 name 필드에 대한 프로퍼티입니다. 외부에서 Name을 통해 name 필.. 2024. 4. 2. 이전 1 2 3 4 5 다음