Javaでの抽象化とカプセル化
Javaでのカプセル化は、データ(変数)とデータ(メソッド)に作用するコードを1つのユニットとしてまとめるためのメカニズムです。カプセル化では、クラスの変数は他のクラスから隠され、現在のクラスのメソッドを介してのみアクセスできます。したがって、データの非表示とも呼ばれます。
Javaでカプセル化を実現するには-
- クラスの変数をプライベートとして宣言します。
- 変数値を変更および表示するためのパブリックセッターメソッドとゲッターメソッドを提供します。
抽象化とは、イベントではなくアイデアを扱う品質です。たとえば、電子メールの場合、電子メールを送信するとすぐに何が起こるかなどの複雑な詳細を考えると、電子メールサーバーが使用するプロトコルはユーザーに表示されません。したがって、電子メールを送信するには、コンテンツを入力し、受信者のアドレスを指定して、[送信]をクリックするだけです。
同様に、オブジェクト指向プログラミングでは、抽象化は実装の詳細をユーザーから隠すプロセスであり、機能のみがユーザーに提供されます。つまり、ユーザーは、オブジェクトの実行方法ではなく、オブジェクトの実行内容に関する情報を入手できます。
Javaでは、抽象化は抽象クラスとインターフェースを使用して実現されます。
-
SwingはJavaでスレッドセーフですか?
いいえ、 Java Swing コンポーネントはJavaではスレッドセーフではありません。 Swingコンポーネントがスレッドセーフではない理由 Java Swingがスレッドセーフではない主な理由の1つは、そのコンポーネントを拡張するタスクを簡素化することです。 Java Swingのもう1つの理由は、ロックの取得と解放、および状態の復元に伴うオーバーヘッドのため、スレッドセーフではありません。 。 一部のJavaSwingコンポーネントメソッドは、 repaint()、revalidate()などのマルチスレッドアクセスをサポートします。 、および invalidate()メソッド
-
Javaでの抽象化
辞書によると、抽象化 イベントではなくアイデアを扱う品質です。たとえば、電子メールの場合、電子メールを送信するとすぐに何が起こるかなどの複雑な詳細を考えると、電子メールサーバーが使用するプロトコルはユーザーに表示されません。したがって、電子メールを送信するには、コンテンツを入力し、受信者のアドレスを指定して、[送信]をクリックするだけです。 抽象化は、実装の詳細をユーザーから隠すプロセスであり、機能のみがユーザーに提供されます。つまり、ユーザーは、オブジェクトの実行方法ではなく、オブジェクトの実行内容に関する情報を入手できます。 Javaでは、抽象化は抽象クラスとインターフェースを使用して