함수 시그니처

함수 시그니처('타입' 시그니처, '메서드' 시그니처)는 함수메서드의 입력과 출력을 정의합니다.

시그니처는 다음을 포함합니다.

  • 매개변수와 그들의 타입
  • 반환값과 타입
  • 던져지거나 콜백으로 반환되는 예외
  • 객체 지향 프로그램에서 메서드의 접근 권한에 대한 정보 (public, static, 혹은 prototype와 같은 키워드).

자세한 내용

JavaScript 시그니처

JavaScript는 '약한 타입' 혹은 '동적' 언어입니다. 이것은 여러분이 변수의 타입을 미리 선언하지 않아도 됨을 의미합니다. 타입은 프로그램이 실행되는 동안 자동으로 결정됩니다. 하지만 JavaScript에서의 시그니처는 여전히 여러분에게 메서드에 대한 몇 가지 정보를 제공해줄 수 있습니다.

js
MyObject.prototype.myFunction(value);
  • 메서드는 MyObject라 불리는 object에 붙어 있습니다.
  • 메서드는 MyObjectprototype에 붙어 있습니다(따라서 이 메서드는 인스턴스 메서드 입니다). 반대의 경우는 정적 메서드입니다.
  • 메서드의 이름은 myFunction입니다.
  • 메서드는 이름은 value이고, 정의되지 않은 하나의 매개변수를 받습니다.

Java 시그니처

Java는 가상머신 코드 수준에서 메서드와 클래스를 식별하는데 시그니처가 사용됩니다. Java 코드를 실행하기 위해서는 변수의 타입을 선언해야 합니다. Java는 '강한 타입'이며, 컴파일 시간에 매개변수 타입을 검사합니다.

java
public static void main(String[] args)
  • public 키워드는 접근 한정자이며, 이 메서드가 모든 객체에서 호출될 수 있음을 의미합니다.
  • static 키워드는 이 메서드가 인스턴스 메서드가 아닌 클래스 메서드임을 의미합니다.
  • void 키워드는 이 메서드에 반환 값이 없음을 의미합니다.
  • 메서드의 이름은 main입니다.
  • 이 메서드는 args라는 이름의 문자열 배열 타입 매개변수 하나를 허용합니다.

같이 보기