일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 전략 패턴이란
- java 팩토리얼 개수
- Spring ipfs
- go
- 백준 1504 java
- nodejs rabbitmq
- java 파티
- rabbitmq 싱글톤
- 자바 백준 팩토리얼 개수
- 익명 객체 @transactional
- kotiln const
- 자바 1676
- java 1238
- 백준 연결요소 자바
- mongodb lookup
- 백준 특정한 최단 경로
- javav 1676
- spring mongodb switch
- Java Call By Refernce
- 백준 2252 줄세우기
- ipfs bean
- spring mongodb
- kotiln const val
- java 1509
- kotiln functional interface
- 안정해시
- java 백준 1509
- ipfs singletone
- spring mongoTemplate switch
- spring mongoTemplate
Archives
- Today
- Total
공부 흔적남기기
Go Interface 사용법 본문
728x90
반응형
Go를 공부하다가 Interface를 사용하는게 신기해서 아주 간단한 예를 들어 정리하고자한다.
먼저 신기한 이유는 인터페이스를 구현할 때 다른 언어와 달리 implemnt와 같은 명시를 안해줘도 된다.
명시하지 않아도 내재적으로 상속한다고 보기때문이다.
코드를 보면 납득이 될 것이다.
package main
import "fmt"
type Book struct {
title string
author string
copyRight string
}
func (b Book) String() string {
return fmt.Sprintf("제목은 %s 작가는 %s 저작권은 %s", b.title, b.author, b.copyRight)
}
func print() {
fmt.Println(Book{"자바의 정석", "남궁성", "도우출판"})
}
//실행결과 : 제목은 자바의 정석 작가는 남궁성 저작권은 도우출판
내부적으로 구현되어 Book 구조체가 String 함수를 사용할 때 구현체가 사용된다.
728x90
반응형
'프로그래밍 언어 > Go' 카테고리의 다른 글
blockchain with go 회고 (0) | 2023.04.16 |
---|---|
Go bufferChannel vs unBufferChannel (0) | 2023.04.05 |