20일차 - 컨스트럭터

특사-VC / 30일의 견고함


스마트 계약 개발을 배우기 위한 30일간의 Solidity 단계별 가이드.




Solidity Series의 20 중 Day30입니다.
오늘 저는 Solidity의 생성자에 대해 배웠습니다.

생성자는 클래스의 개체가 초기화될 때마다 호출되는 모든 개체 지향 프로그래밍 언어의 특수 메서드입니다. Solidity의 경우는 완전히 다릅니다. Solidity는 스마트 계약 내부에 생성자 선언을 제공하며 계약이 배포될 때 한 번만 호출하고 계약 상태를 초기화하는 데 사용됩니다. 명시적으로 정의된 생성자가 없는 경우 컴파일러에서 기본 생성자를 생성합니다.

생성자 만들기



생성자는 액세스 한정자가 뒤에 오는 함수 이름 없이 생성자 키워드를 사용하여 정의됩니다. 계약의 상태 변수를 초기화하는 선택적 함수입니다. 생성자는 내부 또는 공개일 수 있으며 내부 생성자는 계약을 추상으로 표시합니다.

통사론:

constructor() <Access Modifier> {          
} 


다음은 생성자의 주요 특성입니다.
  • 계약에는 하나의 생성자만 있을 수 있습니다.
  • 생성자 코드는 계약이 생성될 때 한 번 실행되며 계약 상태를 초기화하는 데 사용됩니다.
  • 생성자 코드가 실행된 후 최종 코드가 블록체인에 배포됩니다. 이 코드에는 공용 기능과 공용 기능을 통해 도달할 수 있는 코드가 포함됩니다. 생성자 코드 또는 생성자만 사용하는 내부 메서드는 최종 코드에 포함되지 않습니다.
  • 생성자는 공개 또는 내부일 수 있습니다.
  • 내부 생성자가 계약을 추상으로 표시합니다.

  • 예시:

    pragma solidity ^0.8.7;
    
    contract constructorExample {
        string str;
    
        // Creating a constructor to set value of 'str'
        constructor() public {
            str = "Example Constructor";
        }
    
        // Defining function to return the value of 'str'
        function getValue() public view returns (string memory) {
            return str;
        }
    }
    

    좋은 웹페이지 즐겨찾기