>백엔드 개발 >Golang >골랭 메소드 할당

골랭 메소드 할당

WBOY
WBOY원래의
2023-05-21 20:39:37744검색

Go 언어는 객체 지향 프로그래밍을 지원하는 언어입니다. 객체 지향 프로그래밍에서 객체에는 속성과 메서드가 포함됩니다. 구조를 정의할 때 속성 유형을 정의할 수 있을 뿐만 아니라 구조에 더 많은 기능을 제공하기 위해 구조에 메소드를 할당할 수도 있습니다. 이번 글에서는 Go 언어의 구조체에 값을 할당하는 방법을 소개하겠습니다.

구조 정의

Go 언어에서는 키워드 유형을 사용하여 구조를 정의합니다. 예를 들어, 학생 구조를 정의합니다:

type Student struct {
    Name    string
    Age     int
    Address string
    Phone   string
}

이 구조에는 학생의 이름, 나이, 주소 및 전화번호가 포함됩니다.

Define method

메서드의 형식은 다음과 같습니다.

func (s Student) methodName() {
    // 方法实现
}

그 중 func는 함수 정의를 나타내며 괄호 안의 s Student는 이 메서드가 Student 구조에 속함을 나타냅니다. 메소드 이름은 대문자로 시작해야 하며, 이는 공개 메소드임을 나타냅니다. 중괄호는 메소드의 구현 내용입니다.

이제 학생 정보를 표시하기 위해 학생 구조에 display() 메소드를 정의합니다.

func (s Student) display() {
    fmt.Printf("Name: %s
Age: %d
Address: %s
Phone: %s
", s.Name, s.Age, s.Address, s.Phone)
}

이 메소드에서는 Printf 함수를 사용하여 학생의 이름, 나이, 주소 및 전화번호를 출력합니다. 구조의 속성은 메소드에서 직접 사용될 수 있습니다.

구조에 메서드 할당

구조와 메서드를 정의한 후에는 구조에 메서드를 할당할 수 있습니다. Go 언어에서는 type 키워드와 func 키워드를 사용하여 구조 유형에 대한 메서드를 정의할 수 있습니다. 예를 들어, Student 구조에 display() 메소드를 할당합니다:

type Student struct {
    Name    string
    Age     int
    Address string
    Phone   string
}

func (s Student) display() {
    fmt.Printf("Name: %s
Age: %d
Address: %s
Phone: %s
", s.Name, s.Age, s.Address, s.Phone)
}

여기의 코드는 구조 정의와 메소드 정의가 함께 병합된다는 점을 제외하면 이전 코드와 동일합니다. 이제 Student 유형의 변수 s를 만들고 해당 디스플레이() 메서드를 호출합니다.

s := Student{"Tom", 18, "Beijing, China", "123456789"}
s.display()

여기 코드는 s라는 학생 개체를 만들고 해당 디스플레이() 메서드를 호출합니다. 이 코드 줄을 실행하면 콘솔에 다음이 출력됩니다.

Name: Tom
Age: 18
Address: Beijing, China
Phone: 123456789

구조 메서드는 구조의 속성에 액세스할 수 있으므로 구조의 데이터를 더 쉽게 조작할 수 있습니다. 이 글을 통해 Golang 메소드 할당의 개념과 적용에 대해 더 깊은 이해를 얻을 수 있기를 바랍니다.

위 내용은 골랭 메소드 할당의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:골랑이 녹슬다다음 기사:골랑이 녹슬다