オブジェクト向けプログラミング


オブジェクトバー


オブジェクトは、変数と関数を表す抽象的なプロセスを統合し、オブジェクト(問題解決オブジェクト)をモジュール化しやすくするツールです.オブジェクト向けプログラミングは、オブジェクトの設計を設計し、データストリームと設計プロセススキームを組織する開発方法です.オブジェクト向けのコードは高い再利用性を有する.

オブジェクト向けVSプロセス向け


  • プロシージャを無視するのではなく、オブジェクト向けにプロシージャを簡略化します.

  • プロセス向けのデータと関数は分離され,統一性がなく,オブジェクト向けのデータと関数はよりモジュール化され,システム化される.

  • プロシージャ向けのコードは再利用性が高いが、グローバル変数、パスタソース、変更と拡張、およびプログラムの理解が過度に困難である.

  • プロセス・ガイドは、プログラムの順序とプロセスを確立し、必要なデータ構造と関数を設計します.オブジェクト・ガイドは、データ構造とこれらの構造を中心としたモジュールを設計してから、実行順序とプロセスを手配します.
  • オブジェクト向けプログラミングの概念。

  • カプセル化-オブジェクトにデータと関数をカプセル化します.
  • 非表示
  • 情報−オブジェクト間のすべての通信は、オブジェクトの関数と対話することによって、外部ポテンシャル井戸からオブジェクト内部実装の新しい詳細が非表示になる関数呼び出しによって行わなければならない.内部データを非表示にすることは、プログラムの他の部分に影響を与えることなく、簡単に変更できることを意味します.
  • 継承、多形性-サブクラス継承、拡張可能.子クラスでは、親から継承された関数を他の機能として使用できます.
  • オブジェクト、クラス、インスタンス

    /* 클래스 */
    public class Animal {
      ...
    }
    /* 객체와 인스턴스 */
    public class Main {
      public static void main(String[] args) {
        Animal cat, dog; // '객체'
    
        // 인스턴스화
        cat = new Animal(); // cat은 Animal 클래스의 '인스턴스'(객체를 메모리에 할당)
        dog = new Animal(); // dog은 Animal 클래스의 '인스턴스'(객체를 메모리에 할당)
      }
    }
    https://gmlwjd9405.github.io/2018/09/17/class-object-instance.html

    クラスVSオブジェクト


    クラスは「設計図」を表し、オブジェクトは「設計図で実現されたすべてのオブジェクト」を表します.

    オブジェクトVSインスタンス


    クラスのタイプとして宣言されるとオブジェクトと呼ばれ、オブジェクトがメモリに割り当てられ、実際に使用されるとインスタンスと呼ばれます.

    インタフェースと抽象クラス


    抽象クラスは未完成の設計図であり,抽象メソッドが存在するクラスであり,実装子のないメソッドを抽象メソッドと呼ぶ.サブクラスで展開して使用する感覚を継承します.
    サブクラスで実施する.抽象クラスはオブジェクトを作成できないクラスであり、サブクラスで強制的に実装する必要があります.
    基本的な設計を採用し、インタフェースがなく、下線が1つしかなく、サブクラスで各クラスに対して機能を実施することができます.
    インタフェースは多重継承に使用されます.抽象クラスで機能を拡張し、インタフェースで実行する機能を定義します.

    かふかかじゅう

  • 過負荷
    技術
  • 、同名の方法に異なるパラメータタイプまたは数を持たせることができる
  • 過負荷
    子クラスで親を再定義する方法
  • リファレンス
    https://gmlwjd9405.github.io/2018/09/17/class-object-instance.html
    https://cocoon1787.tistory.com/44