ホームページ >Java >&#&チュートリアル >シナリオ、3
注: 必要に応じて main メソッドを追加します。
ここで紹介するすべてのシナリオは、Java を介して OOP (オブジェクト指向プログラミング) についてよく理解するためのものです。
シナリオ #1:
期待される理解: アクセス修飾子、単一継承、ゲッター メソッド、コンストラクターのオーバーロード
1) 「Trainer」という名前のクラスを作成します。
– デフォルトのインスタンス変数がある 文字列 dept、institute
– 値を割り当てる – 「Java」、「Payilagam」
– プライベートインスタンス変数 int給与
を持ちます
– 給与の値として 10000 を割り当てます。
– 給与のゲッター メソッドを作成します。
– 戻りデータ型として void を持つインスタンス メソッド training() を持たせる
– training() メソッド内に print ステートメントを追加します
2) 「Trainer」の下にサブクラス「SQLTrainer」を作成します。
– main メソッドを含めます。
– このクラスのインスタンス RAM を作成します
– 適切なスーパークラスコンストラクターで処理します
– 親クラスのインスタンス変数にアクセス
– 親クラスのインスタンスメソッド training()
を呼び出す
– 親クラスのゲッターメソッドを使用して給与にアクセスします
package B15; public class Trainer { String dept = "java"; String institute = "payilagam"; private int salary = 10000; Trainer(String dept, String intitute) { this.dept = dept; this.institute = institute; } public static void main(String[] args) { Trainer trainerkumar = new Trainer("cse", "payilagam"); String a = trainerkumar.traing(); trainerkumar.salary(); System.out.println(a); } public void salary() { System.out.println("salary = " + salary); } public String traing() { return dept + " " + institute; } }
出力:
給料 = 10000
CSEペイラガム
package B15; public class SQLtrainer extends Trainer { SQLtrainer(String dept, String intitute) { super(dept, intitute); } public static void main(String[] args) { SQLtrainer ram = new SQLtrainer("cse111", "srit"); String a = ram.traing(); System.out.println(a); ram.salary(); System.out.println(ram.dept); System.out.println(ram.institute); } }
出力
cse111ペイラガム
給料 = 10000
cse111
ペイラガム
シナリオ #2:
期待される理解: インターフェイス、クラス、静的変数、動的バインディング
1) 「Actor」というインターフェースを作成します
– 変数を持つ boolean makeUpRequired
– 「makeUpRequired」に「true」値を割り当てます
– 変数文字列アドレスを持ちます。
– アドレスに「Chennai」という値を割り当てます。
– void メソッド act()、dance()、sing()
2)メインメソッドを使用してActorsivakumarと名付けられたクラスを作成します
- このクラスにインターフェイス「アクター」を実装してください
- インターフェイスからのメソッドの定義を独自の定義を提供します
- 静的変数文字列アドレスを持っています。
- 「コインバトール」としてアドレスに値を割り当てます
- インスタンスメソッド「Speaking()」をvoid returnデータ型を使用します。
- 以下のようにActorsivakumarのインスタンスを作成します
Actorsivakumar as = new Actorsivakumar(65、「Audi car」)
- 適切なコンストラクター
で処理します
- Actorsivakumarクラスのすべてのメソッドにアクセスします
- 動的バインディングアプローチを使用したインターフェイス「アクター」の別のインスタンスを作成
- 適切なコンストラクター
で処理します
- Actorsivakumarクラスのアクセスメソッド
- 「AC」を使用して変数アドレスにアクセスし、値を印刷
- 2つのインスタンスの違いを観察してメモ
output:
Sivakumarは演技
です
Sivakumarは話しています
Sivakumarは踊っています
65
package B15; public class Trainer { String dept = "java"; String institute = "payilagam"; private int salary = 10000; Trainer(String dept, String intitute) { this.dept = dept; this.institute = institute; } public static void main(String[] args) { Trainer trainerkumar = new Trainer("cse", "payilagam"); String a = trainerkumar.traing(); trainerkumar.salary(); System.out.println(a); } public void salary() { System.out.println("salary = " + salary); } public String traing() { return dept + " " + institute; } }アウディカー
package B15; public class SQLtrainer extends Trainer { SQLtrainer(String dept, String intitute) { super(dept, intitute); } public static void main(String[] args) { SQLtrainer ram = new SQLtrainer("cse111", "srit"); String a = ram.traing(); System.out.println(a); ram.salary(); System.out.println(ram.dept); System.out.println(ram.institute); } }Sivakumarは演技
です
Sivakumarは踊っています
コインバトール
チェンナイ
true
シナリオ#3:
期待される理解:抽象化、継承、返品キーワード、メソッド引数、コンストラクター
1)「スマートフォン」という名前の抽象クラスを作成します
- 以下の抽象的なメソッドを追加します
- int call(int sconds)
- void receivecall() - 非抽象メソッドvoid browse()を追加します - Browse()Method Definition
内に「スマートフォンブラウジング」を印刷します - 以下のようにコンストラクターを持っています publicスマートフォン()
{
system.out.println(「開発中のスマートフォン」);
}
2)スマートフォンの抽象サブクラスとして「FactoryDemo」と呼ばれるクラスを作成
- void verifyfingerprint()
--void sultionPattern()
- 非抽象メソッドvoid browse()
を追加します
- Browse()Method Definition
内に「ファクトリーデモブラウジング」を印刷します
- 可変ブールIsoriginalpieceを追加し、「False」を値として割り当てます。
- 静的変数int価格を追加し、値を0として設定します
3)FactoryDemoのサブクラスとしてメインメソッドを使用して「Samsung」と呼ばれるクラスを作成します。
- 実装されていないメソッドを追加
- 静的変数int価格を追加し、値を5000として設定します。
- Sam
と呼ばれるSamsungクラスのインスタンスを作成します
- SAMインスタンスを使用して、Browse()メソッドにアクセスします
- SAMインスタンスを使用したアクセス価格変数。
- どのメソッドが呼び出されているかを観察し、メモダウンします
output:
開発中のスマートフォン
FactoryDemoブラウジング
指紋
proverspattern
Receivecall
b = 100
pric = 5000
以上がシナリオ、3の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。