コース: Java 基本講座
今すぐコースを受講しましょう
今すぐ登録して、23,200件以上登録されている、業界エキスパート指導のコースを受講しましょう。
クラスのブロックと変数のスコープについて理解する
このレッスンでは クラス内のコードの「ブロック」と 変数の「スコープ」という概念について 説明します。 「ブロック」とはいったい何でしょうか。 簡単に言うと、波かっこ開始から 波かっこ閉じ、までの間 このひとまとまりのコードを指して 「ブロック」という表現が用いられます。 例えば、画面に表示されている Person クラスの定義では 3行目のいちばん最後に 波かっこの開始がありますね。 この波かっこに対応する波かっこ閉じ、は 54 行目、この波かっこです。 それで、この Person クラスの 3行目から 54 行目までの間を指して 「Person クラスの定義ブロック」 と呼ばれるわけです。 9行目の最後にも波かっこの開始があり 13 行目の終わりにも 波かっこの閉じ、があります。 この2つが対応しています。 この間にはさまれた部分は 「Person クラスのコンストラクタの 定義ブロック」と呼ばれます。 15 行目から 19 行目までは 「sayHello() メソッドの 定義ブロック」ということに なるわけですね。 これら、クラス内のそれぞれのブロックには 変数の「スコープ」というものがあります。 これは何でしょうか。 例えば、5行目で String 型の name という変数が定義されています。 この name という変数は Person クラスの 定義ブロックのレベルで 宣言されていますね。 その場合、この変数は Person クラスの 定義ブロック内であれば どこでも自由に参照できる ということになります。 例えば getHelloMessage() というメソッドは Person クラスのブロックの中に 入っています。 その場合、この name という変数に 自由にアクセスできるわけですね。 この getHelloMessage() というメソッドの中には name という変数は いっさい定義されていませんが それより上のレベルである Person クラスの定義ブロックに name という変数が宣言されているので 自由に参照できるわけです。 例えば、この getHelloMessage() の中に String 型で name という 変数を定義したら、どうなるでしょうか。 この場合、47 行目で参照されている name とは Person…
エクササイズファイルを使って実践してみましょう。
インストラクターがコースで使用しているファイルはダウンロードできます。見て、聞いて、練習することで、理解度を深めることができます。
目次
-
-
-
-
-
-
-
-
-
-
-
-
(ロック済み)
クラスの定義とインスタンス化について5分50秒
-
コンストラクタを定義する2分38秒
-
(ロック済み)
コンストラクタにパラメータを指定する4分47秒
-
(ロック済み)
thisキーワード3分11秒
-
(ロック済み)
メソッドを定義する4分45秒
-
(ロック済み)
メソッドにパラメータを引き渡す5分47秒
-
(ロック済み)
メソッドから戻り値を返す6分22秒
-
(ロック済み)
複数のインスタンスを生成する3分37秒
-
(ロック済み)
nullキーワード3分56秒
-
(ロック済み)
クラスのブロックと変数のスコープについて理解する5分25秒
-
(ロック済み)
static変数(クラス変数)3分58秒
-
(ロック済み)
staticメソッド(クラスメソッド)2分30秒
-
(ロック済み)
-
-
-
-
-