答えて
あなたはread the manualが基本PHP OOPにあると仮定します。
クラスは、に、というオブジェクトのプロパティ、メソッド、および動作を定義するために使用します。オブジェクトは、を作成したのものです。クラスをの青写真と考えると、実際のの建物はのように、青写真(クラス)に従って作成してください。ここ(はい、私は青写真/建物のアナロジーは死に行われている知っている。)
// Class
class MyClass {
public $var;
// Constructor
public function __construct($var) {
echo 'Created an object of MyClass';
$this->var = $var;
}
public function show_var() {
echo $this->var;
}
}
// Make an object
$objA = new MyClass('A');
// Call an object method to show the object's property
$objA->show_var();
// Make another object and do the same
$objB = new MyClass('B');
$objB->show_var();
オブジェクトは、(AとB)異なっているが、彼らはMyClass
クラスの両方のオブジェクトです。青写真/建築のアナロジーに戻って、同じ青写真を使って2つの異なる建物を建てると考えてください。ここで
は、あなたがより多くのリテラルの例が必要な場合は、実際の建物について語っ別の抜粋です:それは古いとより静的OOPのパラダイムに従っているため
// Class
class Building {
// Object variables/properties
private $number_of_floors = 5; // Each building has 5 floors
private $color;
// Constructor
public function __construct($paint) {
$this->color = $paint;
}
public function describe() {
printf('This building has %d floors. It is %s in color.',
$this->number_of_floors,
$this->color
);
}
}
// Build a building and paint it red
$bldgA = new Building('red');
// Build another building and paint it blue
$bldgB = new Building('blue');
// Tell us how many floors these buildings have, and their painted color
$bldgA->describe();
$bldgB->describe();
PHPは参照やハンドルと同じ方法でオブジェクトを扱います。つまり、各変数にはオブジェクト全体のコピーではなくオブジェクト参照が含まれています。+1 – kjy112
+1非常に良い、教育的な例!初心者はしばしばクラスとインスタンス(オブジェクト)を混同します。 –
私は 'private $ number_of_floors = 5;'と 'private $ color;'を 'オブジェクト変数/プロパティ'と呼んでいます。 'public function __construct($ paint)'は 'クラスコンストラクタ'と呼ばれます。ですから、なぜ 'Class constructor'と同じではないかは、' Object variables/properties'ではなく 'Class variable/properties'と呼ばれています。 – codenext
- 1. クラスfoo、クラスfoo()とクラスfoo(オブジェクト)の違いは?
- 2. C++クラス・ポインタとクラス・オブジェクトの間の違いは何ですか?
- 3. 違い、Javaのクラスとオブジェクトの実装ではとC++
- 4. PHPクラスの拡張とオブジェクト
- 5. jsのモジュールとPHPのクラスの違いは何ですか?
- 6. Kotlin:クラス内のオブジェクトとコンパニオンオブジェクトの相違
- 7. C#のオブジェクトとクラスの違いは何ですか?
- 8. PHPの::と - の違いは?
- 9. enumクラスとenumクラスの違いは?
- 10. BrowseFragmentクラスとBrowseSupportFragmentクラスの違いは?
- 11. オブジェクトとハッシュの違いは?
- 12. クラス、オブジェクト、エンティティ:違いは何ですか?
- 13. "オブジェクト" と "オブジェクト*" の違い
- 14. phpとsqlの違いは?
- 15. オブジェクトの作成とクラスのインスタンス化の違い
- 16. C++本とクラス間のクラスの違い::
- 17. PHP - クラス外の使用キーワードとクラス内の使用キーワードの違い
- 18. NG_VALIDATORSとバリデーター(クラス)の違い
- 19. クラスとパッケージの違い
- 20. クラスとタイプの違い
- 21. クラスとテストクラスの違い
- 22. jsの配列とオブジェクトの違いは?
- 23. オブジェクト指向Perlのパッケージ、モジュール、クラスの違いは何ですか?
- 24. Java BeanとJavaクラスの違いは?
- 25. DFD(データフロー図)とクラス図の違いは?
- 26. APIViewクラスとビューセットクラスの違いは?
- 27. StringTokenizerとjava.util.Scannerクラスの違いは
- 28. エンティティBeanとEntityクラスの違いは?
- 29. オブジェクトとNSObjectの違い
- 30. コンストラクタとオブジェクトの違い
クラスはPHPに必要です。 [プロトタイプベースの言語(JavaScript、Lua)](http://en.wikipedia.org/wiki/Prototype-based_programming)では、実際にはオブジェクトだけが必要です。したがって、クラスの必要性についての混乱は理にかなっていません。 – mario