golang에도 수업이 있나요?
golang에는 수업이 없습니다.
golang에는 명확한 객체지향문이 없고, 객체지향언어라고 볼 수도 없습니다. 이유:
golang은 상속과 다형성이 아닌 캡슐화만 지원합니다.
golang은 구조체만 있고 클래스는 없습니다.
정말로 연결하고 싶다면 구조체를 다른 언어의 클래스와 비교할 수 있습니다.
클래스 선언
type Poem struct { Title string Author string intro string }
공개, 보호 또는 비공개 선언 없이 클래스를 선언합니다.
Golang은 속성 액세스 권한을 구현하기 위해 또 다른 접근 방식을 사용합니다. 속성의 첫 글자가 대문자이면 다른 패키지에서 액세스할 수 있고, 그렇지 않으면 이 패키지에서만 액세스할 수 있습니다. 클래스 선언과 메소드도 마찬가지입니다.
클래스 메서드 선언
func (poem *Poem) publish() { fmt.Println("poem publish") }
또는
func (poem Poem) publish() { fmt.Println("poem publish") }
은 다른 언어와 다릅니다. golang 선언 방법은 func 뒤에 poem과 같은 선언이 추가된다는 점을 제외하면 일반적인 방법과 동일합니다. *를 추가하는 것과 추가하지 않는 것의 차이점은 하나는 포인터 객체를 전달하고 다른 하나는 값 객체를 전달한다는 것입니다.
관련 추천: golang 튜토리얼
위 내용은 golang에는 수업이 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!