Javaオブジェクト指向プログラミング講座

継承と可視性

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
継承に使用されるextendsとアクセス修飾子protectedの使用方法を解説します。
講師:
08:26

字幕

このレッスンでは継承に使用される extends とアクセス修飾子 protected の使用方法を解説します。UML の可視性、Java ではアクセス修飾子と言いますがいままで+-+が公開、-が非公開それから同一パッケージ公開をチルダ、これだけ説明してきました。Java では public、private か無指定(default)、これだけですね。今回継承する場合はUML では#、Java ではprotected というキーワードがありますがこれは継承できる、サブクラスは仕様することができる、但し外部には非公開つまりサブクラスには +だけども外部には-そういう protected というものがあります、これを使います。例えば、 A、いままでここに-としてました。けれども、サブクラスを作るのであればここを#、protected にします。Java では class Aいままで private にしていたのをprotected というキーワードに書き換えます。そうするとサブクラス B の方はextends AA を拡張します。A extends ですね。そうするとここからこの A を自分のフィールドのように使用することができます。 例えばこのモデルですね。ここに setA、getAここに BsetB、getB がありますけどMain というクラスからB というインスタンスを作ります。その B に対してsetA、setB 呼んでるわけです。setA、setB はB にはありません。こちらですね。それを使えるわけです。これ実行するとこの setA、setBsetA でこちらに、setB でこちらにオブジェクトで書けばB のインスタンスなんですけどここに A と B 2つ持ってるんですね。B とインスタンス、本来B しか持ってないのにA も使えるわけです。次に継承のモデルKokyaku、Kojin、Houjin を考えます。Kokyaku は、顧客番号、顧客名をprotected で持ってます。顧客情報を表示する、print です。Kojin は顧客番号を自動発番しますのでstatic で lastId を 1000Houjin の方は lastId 5000 にしておきます。それから gender、性別ですね。男性は M、女性は F とします。printInfo は、この性別とこの print を使って顧客情報を表示します。 Houjin の方、type、これは業種です。printInfo は、この業種とこの Kokyaku のprint を使って顧客情報を表示します。オブジェクトは例えば顧客番号 1001 宮本太郎さん性別 M です。例えば、法人顧客の場合は5001 番、株式会社 ×× 商事業種、サービス業とします。このモデルを Java で実装します。実行結果はこの様にこのインスタンスの内容表示するようにします。顧客のモデルを作ります。プロジェクト名 inheritance1クラス名 Main としておきます。まず Kokyaku というクラスを作ります。ここ protected 顧客番号、顧客名を private ではなくprotected にします。コンストラクタ、それから print ですね。デフォルトコンストラクタも作っておきます。デフォルトコンストラクタです。次に、サブクラス個人顧客、法人顧客を作ります。まず、個人顧客です。class Kojin extends Kokyakuこれで継承します。中を書きます。まず、フィールド lastId = 1000これを static にしておきます。顧客番号は 1001 から始まります。 自動発番になります。それから gender、性別をgender とします。男性が M、女性が F です。コンストラクタデフォルトから引数を継ぎここで、super lastId name0 と呼んでますけどこれは super というのはこの場合顧客のコンストラクタですね。これを呼んでます。ここで super で、lastId ++1000 だから最初 1001 ですね。1001 の name0、これが呼ばれます。それから gender をセットします。printInfo、これはM なら男性、 F なら女性とします。それでこの str 、これを表示します。次は Houjin です。Houjin extends Kokyaku とします。この中を作ります。lastId 5000、これを static とします。Houjin の場合は顧客番号 5001 から始まります。type は業種です。コンストラクタ、デフォルトと引数付きを作ります。ここでまた super ++ lastId とやってます。Houjin というコンストラクタグループとlastId 5000 ですね。5001 番からになります。 super というのは、この Kokyaku のコンストラクタが呼ばれます。次に printInfoこの print というのはsuper クラスの print です。Kokyaku、Kokyaku の print顧客番号と顧客名を表示します。その後に type を表示します。それで、この super クラスの print ですけどもこれ printLn ではなくて print にしてます。print を入れるのは改行しますけど1行に書くためにここは改行しない print を使っております。続けて、男性、女性とか業種が表示されます。次に Main を作ります。まず Kojin ですね。男性とします。Houjin を作ります。これができましたので、実行をかけてみます。そうすると 1001 宮本太郎、男性ここ1行になってますね。改行しないで、1行になっております。5001 株式会社 ×× 商事、サービス業とこういう風になります。このレッスンでは継承に使用される extends とアクセス修飾子protected の使用法を解説しました。

Javaオブジェクト指向プログラミング講座

このコースではオブジェクト指向プログラミングの3大特徴である「カプセル化」「継承」「多態性」を、UMLモデルとJavaプログラムを対比しながら解説します。「カプセル化」ではコンストラクタや可視性、「継承」ではUML汎化関係とJavaの関係、「多態性」では継承およびインタフェースによるプログラミング方法などを説明します。

3時間23分 (36 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2016年09月27日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。