JavaA2Z

KAB-studio > プログラミング > JavaA2Z > publicフィールドとは

publicフィールド

日本語 公用フィールド
英語 public field
ふりがな ぱぶりっくふぃーるど
フリガナ パブリックフィールド

解説

publicで修飾されたフィールド
public フィールド;」のように、フィールド宣言の先頭にpublicが付けられたフィールド
publicフィールドは制限が全くなく、クラスの内外を問わずアクセスすることができる。
しかしそれは非常に危険なことである。フィールドに直接アクセスできるようになると、好き勝手に操作できるようになってしまう。たとえばStringフィールドで「nullはあり得ない」ことになっており、メソッドがそれを前提に使用している場合、もしこのフィールドpublicであれば外のクラスからnullを格納できてしまい、プログラムが正しく動作しなくなってしまう。
publicフィールドは、たとえばstatic finalフィールドのように「変更できない定数値」等にのみ使用し、通常のフィールドprivateフィールドにしてクラスの内部で管理するべきである。このprivateフィールドに他のクラスからアクセスする場合にはgetter/setterを用意した方がよい。

参考サイト

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

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

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

// Sample.java
public class Sample
{
    public static void main( String[] args )
    {
        NormalClass normalClass = new NormalClass();
        // publicフィールドを別クラスからアクセスします。
        normalClass.data = 100;
        System.out.println( normalClass.data );
        // 100
        // こうやって普通にアクセスできちゃいます。
    }
}

/**
*   フツーのクラス。
*/
class NormalClass
{
    /**
    *    publicフィールド。
    */
    public int data;
}
// Sample.java
public class Sample
{
    public static void main( String[] args )
    {
        NormalClass normalClass = new NormalClass();
        // publicフィールドを別クラスからアクセスします。
        normalClass.data = 100;
        System.out.println( normalClass.data );
        // 100
        // こうやって普通にアクセスできちゃいます。
    }
}

/**
*   フツーのクラス。
*/
class NormalClass
{
    /**
    *    publicフィールド。
    */
    public int data;
}

この単語を含むページ

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

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