JavaA2Z

KAB-studio > プログラミング > JavaA2Z > Classとは

Class

日本語 階級
英語 class
ふりがな くらす
フリガナ クラス

解説

クラスの情報を格納するクラス
J2SEに含まれるクラスのひとつ。パッケージも含めたクラス名java.util.Class。
 
その名の通り、クラスの情報を格納するクラス
主にリフレクションうために使用する。newInstance()メソッドで新しいインスタンスを作ることができ、getMethods()メソッドメソッド一覧を格納するMethodクラス配列を、getFields()メソッドフィールド一覧を格納するFieldクラス配列を取得することができる。
また、単純に「クラス名」をログに出力する場合等にも利用される。
 
Classクラスインスタンスの取得方法は主に3通りの方法がある。
1つめは、「クラス.class」とする方法。staticフィールドclassにはクラスのClassインスタンスが格納されている。「クラス名」を文字列リテラルで書きたくない場合に便利である。
2つめは、ObjectクラスのgetClass()メソッドを使用する方法。すでに存在するクラスインスタンスから取得することができる。
3つめは、ClassクラスforName()メソッドを使用する方法。このstaticメソッドに、パッケージ名も含めたクラス名を渡すことで取得することができる。

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

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

// Sample.java
import java.util.ArrayList;

public class Sample
{
    public static void main( String[] args )
    {
        // このクラスの情報はclassフィールドに格納されています。
        Class thisClass = Sample.class;
        System.out.println( thisClass );
        // class Sample

        // たとえば、"Sample"って書きたくない時に使用します。
        String thisClassName = thisClass.getName();
        System.out.println( thisClassName );
        // Sample

        // string変数のClassクラスを取得します。
        String string = "あいうえお";
        Class stringClass = string.getClass();
        System.out.println( stringClass );
        // class java.lang.String

        try
        {
            // ArrayListクラスを、名前から取得します。
            Class arrayListClass = Class.forName( "java.util.ArrayList" );
            System.out.println( arrayListClass );
            // class java.util.ArrayList

            // このクラスを作ります。
            ArrayList arylst = (ArrayList)arrayListClass.newInstance();
            arylst.add( "かきくけこ" );
            System.out.println( arylst.get( 0 ) );
            // あいうえお
        }
        catch( ClassNotFoundException e )
        {
            // ClassクラスのforName()メソッドで、クラスが存在しない場合に投げられます。
            e.printStackTrace();
        }
        catch( InstantiationException e )
        {
            // ClassクラスのnewInstance()メソッドで、インスタンスが作れない場合に投げられます。
            e.printStackTrace();
        }
        catch( IllegalAccessException e )
        {
            // ClassクラスのnewInstance()メソッドで、コンストラクタが呼べない場合に投げられます。
            e.printStackTrace();
        }
    }
}
// Sample.java
import java.util.ArrayList;

public class Sample
{
    public static void main( String[] args )
    {
        // このクラスの情報はclassフィールドに格納されています。
        Class thisClass = Sample.class;
        System.out.println( thisClass );
        // class Sample

        // たとえば、"Sample"って書きたくない時に使用します。
        String thisClassName = thisClass.getName();
        System.out.println( thisClassName );
        // Sample

        // string変数のClassクラスを取得します。
        String string = "あいうえお";
        Class stringClass = string.getClass();
        System.out.println( stringClass );
        // class java.lang.String

        try
        {
            // ArrayListクラスを、名前から取得します。
            Class arrayListClass = Class.forName( "java.util.ArrayList" );
            System.out.println( arrayListClass );
            // class java.util.ArrayList

            // このクラスを作ります。
            ArrayList arylst = (ArrayList)arrayListClass.newInstance();
            arylst.add( "かきくけこ" );
            System.out.println( arylst.get( 0 ) );
            // あいうえお
        }
        catch( ClassNotFoundException e )
        {
            // ClassクラスのforName()メソッドで、クラスが存在しない場合に投げられます。
            e.printStackTrace();
        }
        catch( InstantiationException e )
        {
            // ClassクラスのnewInstance()メソッドで、インスタンスが作れない場合に投げられます。
            e.printStackTrace();
        }
        catch( IllegalAccessException e )
        {
            // ClassクラスのnewInstance()メソッドで、コンストラクタが呼べない場合に投げられます。
            e.printStackTrace();
        }
    }
}

この単語を含むページ

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

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

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