Calendar |
Recent Entry |
Recent Comment |
Category |
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
クラス名 参照変数名;
クラス〇〇型
参照変数名=new コンストラクター();
代入する 〇〇型のインスタンス生成もしくは、
クラス名 参照変数名 = new コンストラクター();
参照変数名.インスタンスフィールド名="入れたい文字など";
を見に行って データ名を観に行き これを代入する
◆UMLのオブジェクト図
オブジェクト名:クラス名 //オブジェクト名(参照変数名)とクラス名をコロンで連結し下線を引く
フィールドエリア
メソッドエリア
※クラスとの利点
▽クラスで作るとクラスファイルが増え、メモリーの圧迫、またバグを作り込む可能性が高い
△クラスは一つで済み、データ型として記述することが出来、再利用も可
▽使用しなくなったものはメモリー上からガーベッジコレクターにより削除される
△バグが発生しても探しやすい
◆コンストラクター
①オブジェクトを生成する。
②(主に)フィールドの初期化を行う
クラス名 参照変数名=new 〇〇();
コンストラクター
◆コンストラクターの定義形式
[アクセス修飾子] クラス名(パラメータ宣言リスト)
↑メソッド定義は一緒
{
インスタンスフィールドを初期化する処理など;
}
◆コンストラクターの目的
◆デフォルトコンストラクター
コーディング時にコンストラクターが記述されなかった場合、コンパイラーによりクラスファイルが生成される際に最低限の機能を持つコンストラクタ0が生成される。
class クラス名
{
public データ型 フィールド名; //この状態でコンパイルするとコンストラクターが無いため
クラス() //デフォルトコンストラクター
{
↓②終了まで //コンパイルした後(イメージ)最低限の機能を持った物を作成(記述は一切無し)
}
↑①呼び出される
データ型 参照変数名 = new コンストラクター();
③メモリー上のインスタンスオブジェクト
④newにてアドレスを取得
⑤参照変数名に代入する
public String name; →name null
↑データ型に基づいた値が ↑ここに入る
※中に何もなければコンパイルエラーとなるがこの場合は、勝手にデータ型の既定値が入力される
キーワードnewによるインスタンス生成
↓
初期化式または、既定値による初期化処理 //データ型による既定値
↓
コンストラクターによる(再)初期化処理 //参照変数()により初期化
◆thisキーワード
コンストラクターや同一インスタンスオブジェクト内から参照する際に記述可能な参照変数のようなもの
※なくてもよいがソースを分かりやすくするため。
「ああ、同じインスタンスオブジェクトで宣言されているインスタンスフィールドへアクセスしているステートメントなんだ」
◇問 以下の説明の中で正しいものを選びなさい。
A:コンストラクターはメンバー変数などを初期化する
B:コンストラクターは任意のタイミングで呼び出すことが出来る
C:コンストラクターは定義が必要である
D:コンストラクターは、戻り値の指定が出来ない。
A:〇メンバー変数つまり印素tんすフィールドなので初期化する
B:×任意のタイミングではなくインスタンスオブジェクト生成時に一度だけ呼び出される
C:×定義は書かなくてもデフォルトコンストラクター(最低限の機能を持ったもの)が定義されるため
D:〇[アクセス修飾子]クラス名(パラメーター)で戻り値が無いので
クラス〇〇型
参照変数名=new コンストラクター();
代入する 〇〇型のインスタンス生成もしくは、
クラス名 参照変数名 = new コンストラクター();
参照変数名.インスタンスフィールド名="入れたい文字など";
を見に行って データ名を観に行き これを代入する
◆UMLのオブジェクト図
オブジェクト名:クラス名 //オブジェクト名(参照変数名)とクラス名をコロンで連結し下線を引く
フィールドエリア
メソッドエリア
※クラスとの利点
▽クラスで作るとクラスファイルが増え、メモリーの圧迫、またバグを作り込む可能性が高い
△クラスは一つで済み、データ型として記述することが出来、再利用も可
▽使用しなくなったものはメモリー上からガーベッジコレクターにより削除される
△バグが発生しても探しやすい
◆コンストラクター
①オブジェクトを生成する。
②(主に)フィールドの初期化を行う
クラス名 参照変数名=new 〇〇();
コンストラクター
◆コンストラクターの定義形式
[アクセス修飾子] クラス名(パラメータ宣言リスト)
↑メソッド定義は一緒
{
インスタンスフィールドを初期化する処理など;
}
◆コンストラクターの目的
データ型としてのクラス | インスタンスオブジェクト | |
---|---|---|
フィールドの宣言 | ①newキーワードによる生成 ーーーーーーーーーーーーー→ | インスタンスフィールド群 |
コンストラクター | ーーーーーーーーーーーーー→ ②コンストラクターによる インスタンスオブジェクト の初期化 |
◆デフォルトコンストラクター
コーディング時にコンストラクターが記述されなかった場合、コンパイラーによりクラスファイルが生成される際に最低限の機能を持つコンストラクタ0が生成される。
class クラス名
{
public データ型 フィールド名; //この状態でコンパイルするとコンストラクターが無いため
クラス() //デフォルトコンストラクター
{
↓②終了まで //コンパイルした後(イメージ)最低限の機能を持った物を作成(記述は一切無し)
}
↑①呼び出される
データ型 参照変数名 = new コンストラクター();
③メモリー上のインスタンスオブジェクト
④newにてアドレスを取得
⑤参照変数名に代入する
public String name; →name null
↑データ型に基づいた値が ↑ここに入る
※中に何もなければコンパイルエラーとなるがこの場合は、勝手にデータ型の既定値が入力される
キーワードnewによるインスタンス生成
↓
初期化式または、既定値による初期化処理 //データ型による既定値
↓
コンストラクターによる(再)初期化処理 //参照変数()により初期化
◆thisキーワード
コンストラクターや同一インスタンスオブジェクト内から参照する際に記述可能な参照変数のようなもの
※なくてもよいがソースを分かりやすくするため。
「ああ、同じインスタンスオブジェクトで宣言されているインスタンスフィールドへアクセスしているステートメントなんだ」
◇問 以下の説明の中で正しいものを選びなさい。
A:コンストラクターはメンバー変数などを初期化する
B:コンストラクターは任意のタイミングで呼び出すことが出来る
C:コンストラクターは定義が必要である
D:コンストラクターは、戻り値の指定が出来ない。
A:〇メンバー変数つまり印素tんすフィールドなので初期化する
B:×任意のタイミングではなくインスタンスオブジェクト生成時に一度だけ呼び出される
C:×定義は書かなくてもデフォルトコンストラクター(最低限の機能を持ったもの)が定義されるため
D:〇[アクセス修飾子]クラス名(パラメーター)で戻り値が無いので
PR
コメント
|
トラックバック
|
この記事にトラックバックする →
ブログ内検索
|