전체 글37 추상클래스(Abstract Class), 인터페이스(Interface) 추상클래스(Abstract Class)추상클래스는 구체적인 구현 없이 선언만 되어 있는 추상 메서드를 포함하는 클래스입니다. 이러한 추상 메서드는 서브클래스에서 반드시 오버라이딩하여 구현해야 합니다. 추상클래스는 객체를 직접 생성할 수 없고, 반드시 상속을 통해 구체적인 클래스를 만들어 사용해야 합니다. 추상클래스를 상속받아 구현한 클래스를 콘크리트 클래스(Concrete Class)라고 부릅니다.추상클래스의 특징추상 메서드 포함: 추상클래스는 하나 이상의 추상 메서드를 포함할 수 있습니다. 추상 메서드는 구현이 없는 메서드로, 서브클래스에서 반드시 구현해야 합니다.일반 메서드 포함 가능: 추상 메서드 외에도 일반 메서드를 포함할 수 있습니다. 일반 메서드는 구체적인 구현을 가지며, 서브클래스에서 상속받.. 2024. 7. 8. 상속(Inheritance), 오버라이딩(Overriding) 상속(Inheritance)상속은 객체지향 프로그래밍의 핵심 개념 중 하나로, 기존 클래스(슈퍼클래스 또는 부모 클래스)의 속성과 메서드를 새로운 클래스(서브클래스 또는 자식 클래스)에 물려주는 것을 말합니다. 이를 통해 코드의 재사용성을 높이고, 클래스 간의 계층 구조를 형성할 수 있습니다.상속의 특징필드와 메서드의 상속: 슈퍼클래스에서 정의된 필드(멤버 변수)와 메서드를 서브클래스가 물려받습니다. 이를 통해 서브클래스는 슈퍼클래스의 기능을 그대로 사용할 수 있습니다.필드와 메서드의 추가: 서브클래스는 슈퍼클래스로부터 상속받은 기능 외에도 고유한 필드와 메서드를 추가할 수 있습니다.메서드 오버라이딩(Overriding): 서브클래스는 슈퍼클래스로부터 상속받은 메서드를 자신에게 맞게 재정의할 수 있습니다.. 2024. 7. 8. 객체(Object), 클래스(Class) 인스턴스(Instance) 객체는 현실 세계의 사물이나 개념을 프로그램 내에서 표현한 것입니다. 모든 객체는 고유한 속성(attributes)과 동작(methods)을 가지고 있습니다. 예를 들어, 자동차라는 객체를 생각해 봅시다. 자동차는 색상, 제조사, 모델명, 출력 등 다양한 속성을 가질 수 있으며, 시동을 걸거나, 전진, 후진, 브레이크를 밟는 등 다양한 동작을 수행할 수 있습니다.객체의 속성색상(Color): 빨간색제조사(Manufacturer): 현대모델명(Model): 소나타출력(Horsepower): 180 마력타이어(Tire): 17인치객체의 동작시동(Start): 엔진을 동작시킴전진(Drive): 차를 앞으로 움직이게 함후진(Reverse): 차를 뒤로 움직이게 함브레이크(Brake): 속도를 감소시킴이처럼 객체.. 2024. 7. 8. 배열 배열은 선언 시 크기가 고정되는 자료구조입니다. 이는 배열을 선언할 때 그 크기를 명시적으로 지정해야 하며, 한번 할당된 배열의 크기는 변경할 수 없습니다. 예를 들어, 5개의 정수를 저장할 배열을 선언하고 초기화할 때 다음과 같이 작성합니다int[] numbers = new int[5]; 이때 배열의 크기인 5는 고정되어, 더 이상 변경할 수 없습니다. 배열에 새로운 요소를 추가하거나 기존 요소를 삭제할 수 없으며, 이런 제약 때문에 배열의 크기를 미리 예상해야 하는 어려움이 있습니다.또한, 배열은 데이터에 순차적으로 접근해야 합니다. 배열 요소들은 메모리에 연속적으로 배치되어 있으며, 인덱스를 통해 접근할 수 있습니다. 인덱스는 0부터 시작하여 배열의 크기-1까지입니다. 예를 들어, numbers 배.. 2024. 7. 8. 이전 1 ··· 4 5 6 7 8 9 10 다음