Go 구조체와 인터페이스를 활용한 객체지향 프로그래밍 기법
1. 구조체 정의, 초기화, 그리고 메서드
구조체 정의와 초기화
Go 언어는 전통적인 '클래스' 키워드나 상속을 제공하지 않습니다. 대신 구조체(struct)를 내장(embedding)하고 인터페이스를 활용하여 더 유연하고 확장성 있는 객체지향 패턴을 구현합니다. 다음은 학생 정보를 담는 구조체 예시입니다.
type Student struct {
id uint
name string
male ...
7월 3일 17:36에 게시됨
Go 언어에서 '...' (줄임표) 연산자 완벽 정리
Go 언어에서 세 개의 점으로 이루어진 줄임표 연산자는 다양한 상황에서 사용됩니다. 이 글에서는 이 연산자의 세 가지 주요 용법을 실제 코드와 함께 설명하고, 자주 마주칠 수 있는 함정들을 짚어보겠습니다.
1. 배열 선언 시 길이 자동 결정
배열 리터럴에서 길이를 명시하는 자리에 줄임표를 사용하면, 초기화되는 요소의 개수에 따라 배열의 크기가 자동으로 결정됩 ...
6월 20일 00:21에 게시됨
TypeScript에서 interface와 type의 차이점
1. 핵심 개념 비교
interface
객체 타입(함수, 클래스, 인덱스 서명 등)을 기술하는 데 최적화됨. 구조적 형식(Shape) 정의에 중점을 두며, OOP 환경에서 유연하게 확장 가능.
type
복잡한 타입 연산이나 추상화를 위한 타입 별칭으로, 다양한 타입(공용 타입, 튜플, 원시 값 등)을 표현 가능. 기능적으로 더 넓은 범위를 지원.
2. 기능적 차이점
특성
interface
type ...
6월 10일 01:06에 게시됨
Java에서 Class 객체의 활용 방법
Java는 객체 지향 프로그래밍 언어로서 모든 것은 객체로 표현됩니다. 이러한 객체를 구현하기 위해 필요한 핵심 개념 중 하나가 Class입니다. 실제로 클래스 자체도 객체이며, java.lang.Class의 인스턴스로 존재합니다.
클래스가 객체라는 점을 이해하려면 다음 예제를 살펴보세요:
package com.edu.hpu;
public class Example {
public static void main(String[] ...
5월 25일 00:19에 게시됨
인터페이스의 이해 및 활용
인터페이스는 구현되지 않은 메서드들을 모아두고, 이를 특정 클래스에서 필요에 따라 구현하는 방식으로 사용됩니다. 아래는 기본 문법입니다:
interface 인터페이스명 {
// 상수
// 추상 메서드
}
class 클래스명 implements 인터페이스명 {
// 필드와 메서드 정의
// 반드시 구현해야 할 인터페이스의 메서드들
}
중요 사항: 인터페이스는 더 추상적 ...
5월 21일 18:15에 게시됨