クラス

클래스와 객체의 기초

by TheVOS posted Oct 03, 2019
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷 添付
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷 添付
Extra Form
原文出所 http://tcpschool.com/php/php_class_basic

クラス(class)とオブジェクト(object)

オブジェクト(object)とは、実生活では、我々が認識することができるもので理解することができます。

これらのオブジェクトの状態(state)と行動(behavior)は、それぞれのプロパティ(property)とメソッド(method)に実装されます。


また、オブジェクト(object)を作り出すための枠組みや設計図のような概念がまさにクラス(class)です。

つまり、PHPでは、クラスを持っているオブジェクトを作成して使用します。


次の例では、Carクラスのオブジェクト(object)を示す例です。


クラス(class)

- 車(Car)

スポーツカー


プロパティ(property)

- $car->modelName = "フェラーリNYIAS"

- $car->modelYear = 2012

- $car->color = "黄色"

- $car->maxSpeed = 206 mph


メソッド(method)

- $car->accelerate()

- $car->brake()


インスタンス(instance)

- 私の車(myCar)


自動車インスタンスは、すべて上記のようなプロパティとメソッドを持つでしょう。

しかし、各プロパティの値はインスタンスにすべて異なります。


プログラミングでインスタンス(instance)とは、メモリ上に作成されたオブジェクトを意味します。

オブジェクト指向プログラミング(OOP、Object-Oriented Programming)

オブジェクト指向プログラミングでは、すべてのデータをオブジェクト(object)として扱われ、オブジェクトがすぐにプログラミングの中心となります。

これにより、コードの管理が容易になり、より少ない労力でも簡単にコードを変更すると、維持管理することができます。


オブジェクト指向プログラミングが持つ特徴は次のとおりです。


  1. 抽象化(abstraction)
  2. カプセル化(encapsulation)
  3. 情報秘匿(data hiding)
  4. 継承性(inheritance)
  5. ポリモーフィズム(polymorphism)

カプセル化は、すでに作成されたコードを変更せずに再使用することを目的とします。

また、情報秘匿を介してオブジェクトの実際の実装内容を外部で知られないよう隠し、オブジェクトのインタフェースを介してのみデータにアクセスできるようにして、セキュリティを強化します。

継承は、クラス間の階層関係を作って、論理的かつ体系的に他のクラスの機能とデータを使用できるようになります。

また、ポリモーフィズムを介して一つの変数や関数の名前が、状況に応じて別の意味で解釈されることができるようになります。

Facebook [ja]コメント 

Atachment
添付 '1087'

List of Articles
カテゴリー 番号 タイトル 日付 閲覧数
EC-CUBE 2系 39 2.13系 ソフトウェア要件 2019.10.11 63
CSS 38 CSS オブジェクトフィットプロパティ file 2019.12.04 55
CSS 37 Css 텍스트 외곽선 처리하기, Stroke 2019.11.28 115
EC-CUBE 2.x 36 EC CUBEで商品ごとに支払い方法を簡単に分ける file 2019.10.28 670
EC-CUBE 2系 35 EC-CUBE 2系でShift_JISに存在しない文字が含まれた受注データがあると、その受注内容が受注CSVからまるごと欠落する 2020.01.02 93
EC-CUBE 2系 34 EC-CUBE 2系でポート番号付で管理画面を動かす 2020.01.02 68
EC-CUBE 2系 33 EC-CUBE 2系で商品を沢山購入すると住所情報が欠落する 2020.01.02 86
EC-CUBE 2系 32 EC-CUBE 2系で商品情報をCSVで更新するとき関連商品情報が削除される 2020.01.02 107
EC-CUBE 2系 31 EC-CUBE 2系で注文を受けた商品の規格を後で削除すると、管理画面で受注内容を編集できなくなる 2020.01.02 139
EC-CUBE 2系 30 EC-CUBE 2系の「もっと見る」を簡潔に 2020.01.02 627
EC-CUBE 4.x 29 EC-CUBE 4를 설치했을 때 설정 한 데이터베이스 암호는 어디에 저장되는 것입니까? 2019.11.14 393
EC-CUBE運用マニュアル 28 EC-CUBE2.12 運用マニュアル file 2019.09.29 64
EC-CUBE 2系 27 EC-CUBE2.13カスタマイズ:新しいページを追加する file 2019.11.11 642
EC-CUBE 4系 26 EC-CUBE4系で管理画面に新規メニュー項目を追加する方法 file 2019.10.28 502
EC-CUBE 2.x 25 EC-CUBE:SC_FormParamクラスによるパラメーターチェック方法 2019.10.03 125
EC-CUBE 2系 24 EC-CUBEをインストールする file 2019.12.10 101
EC-CUBE 2系 23 EC-CUBE標準規約 2019.09.28 158
EC-CUBE 2.x 22 EC-CUBE에서 모든 페이지에서 로그인 체크하기 2019.11.11 457
EC-CUBE 2系 21 ECCUBE 2.13のインストール方法をスクリーンショット付きでわかりやすく徹底解説! file 2019.10.10 138
マニュアル 20 THEVOS Youtube BOARD SKIN 사용 설명 2018.11.11 119
Board Pagination Prev 1 2 Next
/ 2