宣言
日本語 | 宣言 |
英語 | declare |
ふりがな | せんげん |
フリガナ | センゲン |
「使用」もしくは「存在」を表名すること。
Javaでは主に「変数を宣言する」という使い方をする。
たとえば「int i;」は、「i」という変数を「宣言」する文である。
このように変数は「作る」のではなく「宣言する」と表現する。
「宣言」には、「定義」と対になる語として、「中身のない、見た目として」という意味がある。
たとえば、変数宣言は「確保したメモリ領域を、指定した型とみなして扱う」という意味がある。
変数そのものを作ったわけでもなければ、その元となる型も作っていない。そのため「宣言」という言葉が使われる。
ただ、あいまいな言葉であることに変わりはないため、「変数の宣言」以外には使いどころが難しいのは確かである。
変数、つまりローカル変数及びフィールドの場合は宣言のみ可能。
ローカル変数の宣言を「ローカル変数宣言」と言う。
クラスの場合は宣言のみ可能。ただし定義との区別は難しく、定義も可能とも言える。
詳しくは「クラス宣言」「クラス定義」を参照。
メソッドの場合、シグネチャーが宣言、実装が定義となる。
メソッドの場合は明確に区別されるため注意すること。
ただし、宣言・定義共に少々「古い」用語のため、最近のオブジェクト指向用語では使用されない傾向にある。
Javaでは主に「変数を宣言する」という使い方をする。
たとえば「int i;」は、「i」という変数を「宣言」する文である。
このように変数は「作る」のではなく「宣言する」と表現する。
「宣言」には、「定義」と対になる語として、「中身のない、見た目として」という意味がある。
たとえば、変数宣言は「確保したメモリ領域を、指定した型とみなして扱う」という意味がある。
変数そのものを作ったわけでもなければ、その元となる型も作っていない。そのため「宣言」という言葉が使われる。
ただ、あいまいな言葉であることに変わりはないため、「変数の宣言」以外には使いどころが難しいのは確かである。
変数、つまりローカル変数及びフィールドの場合は宣言のみ可能。
ローカル変数の宣言を「ローカル変数宣言」と言う。
クラスの場合は宣言のみ可能。ただし定義との区別は難しく、定義も可能とも言える。
詳しくは「クラス宣言」「クラス定義」を参照。
メソッドの場合、シグネチャーが宣言、実装が定義となる。
メソッドの場合は明確に区別されるため注意すること。
ただし、宣言・定義共に少々「古い」用語のため、最近のオブジェクト指向用語では使用されない傾向にある。
参考サイト
- (参考サイトはありません)
// Sample.java
public class Sample
{
public static void main( String[] args )
{
// int型変数を「宣言」します。
int i;
// intクラスそのものはすでに定義されています。
// そのため「定義」するわけではありません。
// 変数iは、メモリ上に32ビットサイズの領域を
// 確保して、そこを「int型変数として使用します」
// と「宣言」したものなので、「宣言」と言うわけです。
}
}
public class Sample
{
public static void main( String[] args )
{
// int型変数を「宣言」します。
int i;
// intクラスそのものはすでに定義されています。
// そのため「定義」するわけではありません。
// 変数iは、メモリ上に32ビットサイズの領域を
// 確保して、そこを「int型変数として使用します」
// と「宣言」したものなので、「宣言」と言うわけです。
}
}
// Sample.java public class Sample { public static void main( String[] args ) { // int型変数を「宣言」します。 int i; // intクラスそのものはすでに定義されています。 // そのため「定義」するわけではありません。 // 変数iは、メモリ上に32ビットサイズの領域を // 確保して、そこを「int型変数として使用します」 // と「宣言」したものなので、「宣言」と言うわけです。 } }
「解説」に含まれているページ
- %>
- *
- ,
- 2進数
- <%!
- <%! %>
- [
- abstract
- byte
- C++言語
- char
- class
- close
- Exception
- extends
- finalメソッド
- final変数
- for
- forステートメント
- for初期化ステートメント
- implements
- import
- int
- interface
- JasperException
- JSP
- JSP宣言
- JSP暗黙オブジェクト
- long
- NaN
- native
- package
- PageContext
- privateクラス
- privateフィールド
- privateメソッド
- protectedクラス
- protectedフィールド
- protectedメソッド
- publicクラス
- publicフィールド
- publicメソッド
- RuntimeException
- short
- static final
- staticクラス
- staticフィールド
- staticメソッド
- staticローカル変数
- synchronizedメソッド
- this
- throws
- void
- インターフェイス
- インターフェイス修飾子
- インポート
- インポート宣言
- クラス
- クラスメンバ
- クラス定義
- クラス宣言
- コンストラクタ
- コンストラクタ修飾子
- シグネチャー
- ジェネリッククラス
- スコープ
- ソースファイル
- タグライブラリ
- パッケージ
- パッケージ宣言
- フィールド
- フィールド修飾子
- フィールド宣言
- ブロック
- プリミティブ型
- メソッド
- メソッド修飾子
- リテラル
- ローカルクラス
- ローカル変数
- ローカル変数宣言
- ローカル変数宣言ステートメント
- 二次元配列
- 修飾子
- 内部クラス
- 初期化
- 参照
- 型
- 型変換
- 変数
- 変数宣言
- 定義
- 実装
- 宣言
- 引数
- 戻り値
- 抽象クラス
- 抽象メソッド
- 数値格上げ変換
- 無限大
「サンプルプログラムとか」に含まれているページ
- ,
- 127.0.0.1
- 2進数
- <%! %>
- <%= %>
- =演算子
- [
- ]
- abstract
- byte
- C++言語
- char
- double
- DTD
- final変数
- float
- for
- forステートメント
- for初期化ステートメント
- implements
- import
- int
- interface
- JSP
- JSP宣言
- JSP式
- localhost
- long
- NaN
- package
- RSS
- Rss4j
- short
- TCP
- UDP
- インスタンスフィールド
- インスタンス初期化子
- インスタンス変数
- インターフェイス
- インポート宣言
- クライアント
- クライアントサーバーシステム
- クラス
- クラス宣言
- コンクリートクラス
- サーバー
- スコープ
- ソケット
- バイト
- パッケージ宣言
- フィールド変数
- ブロック
- プリミティブ型
- プログラム
- メソッド修飾子
- ローカルクラス
- ローカル変数
- ローカル変数宣言
- ローカル変数宣言ステートメント
- 内部クラス
- 初期化
- 型
- 変数
- 変数宣言
- 実装
- 実装クラス
- 宣言
- 抽象クラス
- 抽象メソッド
- 文字リテラル
- 無限大
- 識別子