JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)

php是最好的语言
リリース: 2018-08-10 10:47:40
オリジナル
1458 人が閲覧しました

クラスの一部の情報はクラス内に隠されており、外部プログラムから直接アクセスすることはできませんが、このクラスを通じて提供されます。隠された情報を操作およびアクセスする方法 利点: a. データにアクセスできるのは次のとおりです。 b. 変更と実装を容易にするためにクラスのインスタンスの詳細を非表示にする

2. 実装手順:

1) 属性の可視性を変更します (プライベートに設定します)

2) ゲッター/セッター メソッドを作成します (属性の読み取りと書き込み用) )

3) メソッドに属性制御ステートメントを追加します (属性値が正当かどうかを判断するため)

例: Set 学生クラスを定義します: 2 つの属性 1) 名前 2) 年齢

Student クラスに、年齢判断を追加します年齢が 0 未満または 150 を超える場合、プロンプト: 不当なデータ

解決できない不当なデータがあります ;

キーワード

private

を使用してください: private ---> (

privateによって変更されたメンバー変数/メンバーメソッドはこのクラス内でのみアクセス可能であり、外部から直接アクセスすることはできません

)

3. パッケージ 1) パッケージの機能: JAVAファイルの管理と解決ファイルは同じ名前と競合します JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化) パッケージを定義します: package パッケージ名

注: これは JAVA ソース プログラムの最初の行に配置する必要があり、. で区切ることができます (例: com.westos.Class

)

2) システム内のパッケージ:

java.(関数).(クラス)

java.lang.(クラス) には、Java 言語の基本クラスが含まれます。言語 JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)

java.io. (クラス) には、入力および出力関連の関数クラスが含まれます

3) パッケージの使用: ファイル内の import キーワードを使用して、他のファイルのクラスを使用します

例: キーボード操作中にインポートされたパッケージエントリ

注: Java では、パッケージの命名規則はすべて小文字です

使用すると、特定のパッケージの下にあるすべてのファイルをロード (

import java.util. ​​

) するか、特定のサブをミュートすることができます-package (JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)import java.util.Scanner

)

4. アクセス修飾子: プロパティとメソッドのアクセス範囲を変更するために使用されます

ps: 通常、メソッドには public を使用します private で属性を変更します

5. this キーワード

1) このキーワードは現在の参照オブジェクトを表します JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)

属性: 現在のオブジェクトのプロパティを操作します

メソッド: 現在のオブジェクトのメソッドを呼び出します

2) のプロパティをカプセル化するときオブジェクトでは、this キーワードがよく使用されます。このとき、属性名とパラメータ名が重複していることがわかりました。これらを区別するために、パラメータの値を の値に代入することを意味します。現在の属性

このキーワードは、必要に応じて属性で使用できるだけでなく、セット メソッド内の特定のメソッドを呼び出すために

を使用することもできます。 例: 前の例に基づいて、結果

を出力します。

1. 携帯電話クラス

package example;


public class Phone {	private String brand;	private int price;	private String color;		public void sendMessage() {		System.out.println("you can message to Andrew");	}		public String getBrand() {		return brand;	}	public void setBrand(String brand) {		this.brand = brand;		this.sendMessage();	}	public int getPrice() {		return price;	}	public void setPrice(int price) {		this.price = price;	}	public String getColor() {		return color;	}	public void setColor(String color) {		this.color = color;	}		public void show(String name) {		System.out.println(name+" use the iphone to call Andrew");	}
}
ログイン後にコピー
2. 学生クラス

package example;


public class Student {	//定义两个变量	String name ;	String gender;	private int age ;	//提供方法:输出变量		public void show() {		System.out.println(name+"   "+age+"   "+gender);	}	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public int getAge() {		return age;	}	public String getGender() {		return gender;	}	public void setGender(String gender) {		this.gender = gender;	}	//针对age进行判断	public void setAge(int a) {		if(a<0||a>150) {			System.out.println("该数据不符合实际");		}else {			age = a;		}	}
}
ログイン後にコピー
3. 電話をかける
package example;


public class Ex2 {	public static void main(String[] args) {		Student x = new Student();		Phone i = new Phone();		x.setAge(24);		x.setName("Silvia");		x.setGender("Lady");		x.show();		i.setBrand("Apple");		i.setColor("玫瑰金");		i.setPrice(6999);		i.show(x.name);	}
}
ログイン後にコピー

結果:

JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)

####END####JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)

関連記事:

JAVA入門システムチュートリアル (4) 基本文法 (2)

JAVA入門システムチュートリアル (5) 基本構文 (3)

以上がJAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!