PHPのオブジェクト指向の基礎問題

1.オブジェクト指向(答えを理解すること)は何ですか?
すべてのものが人気な説明、「すべてはオブジェクトである」であり、オブジェクト指向OO =オブジェクト指向分析OOA +オブジェクト指向設計のOOD +オブジェクト指向プログラミングのOOP:別個のオブジェクトとして扱われている1つ(単位)とすることができる、彼らは自分の機能を完了するのではなく、Cに機能するようでき

今、純粋なオブジェクト指向言語は、主にJavaやC#、PHPで、C ++はオブジェクト指向をサポートし、Cはプロセス指向です。

2、簡単なプライベート、保護、パブリックアクセス修飾子。
回答:プライベート:プライベートメンバーはクラス内からアクセスすることができます。

保護:内部クラスのメンバーと継承クラスの保護がアクセスすることができます。

公共:公共のメンバー、完全な開示、無アクセス制限。

3、スタックとヒープの違いは?
:スタックは、コンパイルの良いメモリ中に割り当てられているので、スタックサイズにあなたのコードは、明確に定義されている必要があります。

ヒープは、動的には、プログラムの操作に応じて割り当てられるヒープメモリのサイズを決定することができ、プログラムの実行中にメモリを割り当てられています。

図4に示すように、XMLおよびHTMLの主な違い
回答:(1)XMLは、大文字と小文字が区別文字であり、HTMLは当てはまりません。
(2)HTMLで、文脈が明確にあなたが省略でき末尾に段落またはキーのリストを表示する場合
または
終了タグなどを。XMLでは、終了タグを省略することはできません。
要素の終了タグ(3)XMLには、我々は、単一のタグがエンドとしてマッチング/文字なしである必要があります持っています。だから、パーサは終了タグを見つけることができません知っています。
(4)XMLでは、属性値は引用符で分配されなければなりません。HTMLで、引用符は、またはしない場合があります。
(5)HTMLでは、あなたは、値なしで属性名を持つことができます。XMLでは、すべての属性は、対応する値を持っている必要があります。

?5、オブジェクト指向機能は、何を持っている
カプセル化、継承、多態性があります:A。抽象的:あなたは、4つの側面を追加した場合。
以下の説明を理解するために:
パッケージ:
パッケージは、モジュールの優れた基本ソフトウェアコンポーネントを確保することである、パッケージの目標は、変更の影響が相互依存関係を持っ防ぐために、プログラムの低カップリングソフトウェアコンポーネントを達成するために、高い凝集である。
継承:
クラスの定義と実装では、この既存のクラスの内容はその内容として定義され、既存のクラスに基づいまで行うことができ、新しいコンテンツの数を追加したり、オリジナルを変更することができますメソッド継承される特定のニーズのためにそれをより適切なものにします。継承は、ソフトウェアの再利用性と拡張性を向上させるために、これはクラス間の関係で、サブクラス自動共有の仕組みの親クラスのデータとメソッドです。
多型:
多型は、すなわち、参照変数になるだろう、向けられ、参照変数が決定されていないプログラミングするときに呼び出されるこの方法により放射されるプログラムで定義された参照変数の特定のタイプを意味するが、プログラムの実行中にのみ決定されますクラスのオブジェクトインスタンスを指しており、最終的に作られたこの参照変数メソッド呼び出しは、クラスメソッドが実行されているプログラムによって決定されるために、実装されています。
要約:
要約は、いくつかの類似点と共通の場所のものを見つけることです、そしてこれらの事が、唯一の類似点と共通の場所これらの事を考慮したクラスに分類され、現在のテーマや目的に関連していないこれらの側面を無視します現在のターゲットに関連する側面に焦点を当てています。例えば、アリとゾウを参照してください、あなたは彼らの類似性を想像することができ、それが抽象的です。

6、抽象クラスとインタフェース、および差の概念?
A:抽象クラス:特別であり、唯一の他のクラスの親として使用、インスタンス化することはできません。キーワード抽象的な文を使用します。
これは、抽象クラスの特別な種類のインターフェイス宣言を使用して、特別なクラスです。
動作は、(1)抽象クラスキーワードは継承によって実現延び、インタフェースを使用して実装キーワードによって達成されます。
(2)がパッケージデータを得ることができる、抽象クラス・データ・メンバーであるが、データなしメンバーこと。
これは、(3)抽象クラス処理するように構成することができるが、インターフェイス、コンストラクタありません。
(4)保護、民間によって抽象クラスのメソッドを公開鍵変形(抽象メソッドがプライベートではない)、インターフェイス・メソッドは、公開鍵のみを修正することができる使用します。
(5)クラスに抽象クラスを継承することができ、そしてクラスは、同時に複数のインタフェースを実装することができます。
(6)インタフェースメンバメソッドを実装するコードを有していなくてもよい方法を実装する抽象クラスコードが存在することができます。

7.効果が何であるか、何であるかデストラクタは、コンストラクタは何ですか?
:コンストラクタ(メソッド)が完了メソッドはオブジェクトを自動的に起動された後に作成された最初のオブジェクトです。それは特別な方法のメンバーである、すべてのクラス宣言に存在します。役割は、いくつかの初期化タスクを実行することです。__construct()コンストラクタ文のみ宣言を使用してPHPの。
デストラクタ(方法)コンストラクタ関数と逆には、オブジェクトが破棄される前に、自動的に最後のオブジェクトと呼ばれる方法です。PHP5は新しく追加されたコンテンツの役割は、このようなファイルを閉じてメモリを解放するよう、オブジェクトを破壊する前に、特定の操作の実現を達成するために使用されています。

図8に示すように、親クラスをリロードする方法の方法、イラスト
A:過負荷、すなわちサブクラスに別の方法で親クラスをカバーすることも上書き法と呼ばれる、親クラスのメソッドを継承します。
親キーをカバーすることは、親クラスはメソッド名、戻り値の型と引数を含んと同様に、サブクラスでメソッドを作成することです。同じ缶名はPHPのメソッドが必要です。

9、この方法は、一般的に魔法は何を使用しますか?説明
回答:PHPのメソッドの先頭に2つのアンダースコア(__)で規定されているような不思議な方法を、魔法の既存のメソッドをオーバーロードしない限り、あなたがより良いではない__関数名は、で始まることをお勧めします。
クラスをインスタンス化するときに__construct()が自動的に呼び出されます。
__destruct()クラスオブジェクトは自動的に最終用途と呼ばれます。
__set()割り当ての特性の不定時間に呼び出します。
呼び出されたときに__get()未定義のプロパティに呼び出します。
__isset()ISSET()または空()関数を使用するときに呼び出されます。
__unset()()時間を設定解除呼び出します使用。
呼び出すときにシリアライズをシリアライズ使用__sleep()。
__wakeup()呼び出されたときにアンシリアライズ、デシリアライゼーションを使用。
呼び出されたときには存在しません__call()メソッドの呼び出し。
静的メソッド__callStatic()の呼び出しが存在しない呼び出しです。
時間の文字列にオブジェクトを変換する__toString()が呼び出されます。このようなエコーとして。
__invoke()メソッドが呼び出されたときにオブジェクトを置くしようとしたときに呼び出します。
__set_state()が呼び出さでvar_export()関数を使用して。配列パラメータを受け入れます。
__clone()を呼び出すときにオブジェクトをコピークローンを使用した場合。

10、これらの三つの言葉は何の代表的なもので、この自己、親を$?どのような状況で使用されますか?
回答:この現在のオブジェクト$
セルフ現在のクラスの
現在のスーパークラスの親
- >プロパティとメソッドを呼び出して、現在のクラス内の$これは、使用しています。
自己現在のクラスも使用しますが、::コールを使用する必要がありますされています。
親クラスインチ

11、クラスで定義された定数は、クラスがどのように一定呼び出す方法を、どのクラス外部定数を呼び出します。
:定数のメンバであるクラス定数は、定数は、量が変化しない一定値です。
キーワードは定数CONSTを定義する。
例えば:CONST PI = 3.1415326と、
外側のアクセスにクラスまたはクラス、定数と変数は、オブジェクトをインスタンス化する定数必要同じであるか否か、
定数フォーマットクラス名にアクセスするためにスコープされていますスイッチ記号(コロン)が呼び出されます。
すなわち:クラス名::クラス定数名。

12、スコープ演算子::どのように使用するには?彼らはどのような状況で使用されていますか?
:クラスの定数を呼び出す
静的メソッド呼び出しを

13は、働く__自動ロード()メソッドは何なのでしょうか?
:この関数の魔法を使用するための基本的な条件は、クラスへのファイルと一貫性のあるクラス名のファイル名です。
プログラムはないがインスタンス化クラスファイルの導入前に、自動的に__autoload()関数を実行する場合、クラスのインスタンスを作成するために実行されたとき。
クラスファイルのパスのクラスのインスタンスの名前を見つけるために、この機能によると、このクラスファイルのクラスファイルのパスの有無を判断した後
、このパスならばクラスの実装上を含めたり、ロードするために必要、そしてプログラムは、引き続きこのファイルが存在しないエラーに。
自動的に含めるかの機能が必要なの番号を記入する必要が読み込むことができます魔法の機能を使用してください。


---------------------
オリジナルます。https://blog.csdn.net/mo3408/article/details/80751965

おすすめ

転載: www.cnblogs.com/gjh99/p/11277621.html