「JavaでC言語のdefineの定数定義に相当するものは」の版間の差分

提供: Java入門
移動: 案内検索
(ページの作成:「C言語/C++言語では、定数の定義に プリプロセッサディレクティブ #define を利用できました。Java言語には、defineは存在しません...」)
 
 
行1: 行1:
C言語/C++言語では、定数の定義に プリプロセッサディレクティブ #define を利用できました。Java言語には、defineは存在しません。その代わり、finalで代替することができます。
+
C言語/C++言語では、定数の定義に プリプロセッサディレクティブ #define を利用できました。Java言語には、defineは存在しません。その代わり、finalで代替することができます。また、finalの代わりに、列挙型 [[Javaの列挙型 enumの使い方|enum]] を利用できます。
  
 
'''読み方'''
 
'''読み方'''
行42: 行42:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== 関連項目 ==
 
== 関連項目 ==
 +
* [[Javaの列挙型 enumの使い方]]
 
* [[メインページ]]
 
* [[メインページ]]
 
<!-- vim: filetype=mediawiki
 
<!-- vim: filetype=mediawiki
 
-->
 
-->

2015年9月12日 (土) 19:05時点における最新版

C言語/C++言語では、定数の定義に プリプロセッサディレクティブ #define を利用できました。Java言語には、defineは存在しません。その代わり、finalで代替することができます。また、finalの代わりに、列挙型 enum を利用できます。

読み方

final
ふぁいなる
define
でぃふぁいん

概要

C言語/C++言語では、定数の定義にプリプロセッサディレクティブ #define を利用して、定数が定義できました。例えば、以下のコードで定数 TIMER_STOPを定義できました。

#define TIMER_STOP	0

Java言語には、C言語と同じ define は、ありません。 その代わり final を利用して、定数を定義できます。 public static final を利用します。たとえば、以下のようなコードになります。

public static final int TIMER_STOP = 0;

ソースコード

以下は、定数クラスを利用する例です。

public class Foo {
	private FOO() {} // オブジェクト化したくない場合
	public static final int TIMER_STOP = 0;
}

クラス外からは、以下のように利用できます。

int i = Foo.TIMER_STOP;

以下は、一般的なクラスです。

// オブジェクト化 OK
public class Bar {
	public static final int TIMER_STOP = 0;
	public Bar () {
	}
}

クラス内からなら、クラス名なしに利用できます。

int i = TIMER_STOP;

関連項目