JavaA2Z

KAB-studio > プログラミング > JavaA2Z > シグネチャーとは

シグネチャー

日本語 署名
英語 signature
ふりがな しぐねちゃー、しぐねいちゃー、しぐにちゃー
フリガナ シグネチャー、シグネイチャー、シグニチャー

解説

メソッドの、メソッド名、引数戻り値throwsによる例外指定の箇所。
つまりメソッド実装{}で囲まれた箇所)を除いた部分。

メソッドの「宣言」とも言う。
ただし厳密には、シグネチャーはメソッド名と引数のみを指す。
 
シグネチャーは、メソッド呼び出すために必要な情報で構成されている。
メソッド名と引数がシグネチャーに書かれているからこそメソッド呼び出すことができ、戻り値が書かれているからこそ戻り値を受け取ることができる。
シグネチャーはメソッドの「名札」といったところである。
 
「シグネチャー」という用語はオブジェクト指向用語である。
スーパークラスメソッドオーバーライドするメソッドは、オーバーライドされるメソッドと同じシグネチャーにしなければならない。
また、インタフェースメソッド実装するメソッドは、実装されるメソッドと同じシグネチャーにしなければならない。
このインタフェースメソッドや、abstractクラスabstractメソッドは、シグネチャーのみであり、実装を持たないメソッドである。
このように、シグネチャーはオブジェクト指向の、特にポリモーフィズムの部分に深く関わっている。
 
厳密には、シグネチャーはメソッド名と引数のみが該当する。
つまり、戻り値例外指定等はシグネチャーに含まない。
ただ、オブジェクト指向用語としての「シグネチャー」は定義が曖昧なため、場合によっては戻り値を含んだりメソッド宣言そのものだったりする。それを踏まえて文脈から読み解くこと。
 
一般には、シグネチャーには「署名」という意味もある。
電子メール文末の署名を「シグネチャー」と言う。
ちなみに英語で「signature」と書くが、このカタカナ語訳には「シグネチャー」「シグネチャ」「シグネイチャー」「シグネイチャ」「シグニチャー」「シグニチャ」などがある。本辞書では、Java言語仕様の日本語訳で「シグネチャ」が使われており、検索で見つけやすいよう「ー」を付けて「シグネチャー」を採用している。

参考サイト

  • (参考サイトはありません)

(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// Sample.java
public class Sample
{
    // ↓ここから
    public int minus( int i )
    // ↑ここまでがシグネチャーです。
    {
        return -i;
    }

    // ただし、厳密なことを言うと、メソッド名と引数のみが
    // シグネチャーなので、以下の範囲ということになります。
    //         → この範囲  ←
    public int minus2( int i )
    //           ↑       ↑
    //      メソッド名   引数
    {
        return -i;
    }

    public static void main( String[] args )
    {
        // 自分のクラスのインスタンスを作ります。
        Sample sample = new Sample();
        // minus()メソッドを呼び出します。
        // この呼び出す際に必要な情報がシグネチャーです。
        //         メソッド名
        //              ↓   引数
        //              ↓    ↓
        int i = sample.minus( 100 );
        System.out.println( i );
        // -100
    }
}
// Sample.java
public class Sample
{
    // ↓ここから
    public int minus( int i )
    // ↑ここまでがシグネチャーです。
    {
        return -i;
    }

    // ただし、厳密なことを言うと、メソッド名と引数のみが
    // シグネチャーなので、以下の範囲ということになります。
    //         → この範囲  ←
    public int minus2( int i )
    //           ↑       ↑
    //      メソッド名   引数
    {
        return -i;
    }

    public static void main( String[] args )
    {
        // 自分のクラスのインスタンスを作ります。
        Sample sample = new Sample();
        // minus()メソッドを呼び出します。
        // この呼び出す際に必要な情報がシグネチャーです。
        //         メソッド名
        //              ↓   引数
        //              ↓    ↓
        int i = sample.minus( 100 );
        System.out.println( i );
        // -100
    }
}

この単語を含むページ

「みだし」に含まれているページ

「解説」に含まれているページ

「サンプルプログラムとか」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2010/05/04
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。