PHP5トライアル(2)_PHPチュートリアル
抽象クラス
抽象クラスはインスタンス化できません。
抽象クラスでは、他のクラスと同様に、変数とメソッドを定義できます。
抽象クラスは抽象メソッドを定義することもできます。抽象クラスのメソッドは実行されませんが、その派生クラスで実行される可能性があります。
例 6: 抽象クラス
abstract class foo {
protected $x;
function setX($x) {
$this->x = $x; }
}
class foo2 extends foo {
function display() {
// コード
}
}
?>
__call
PHP5 オブジェクトは特別なメソッド __call() を追加しました。このメソッドは他のメソッドを監視するために使用されます。オブジェクト内のメソッド。オブジェクトに存在しないメソッドを呼び出そうとすると、__call メソッドが自動的に呼び出されます。
例 7: __call
class foo {
function __call($name,$arguments) {
print("電話しましたか? 私は $name!"); $ x = new foo();
$x->doStuff();
この特別なメソッドは「オーバーロード」アクションを実装するために使用できます。パラメータを作成し、プライベート メソッドを呼び出して渡します。
例 8: __call を使用して「オーバーロード」アクションを実装する
class Magic {
function __call($name,$arguments) {
if($name=='foo') {
if(is_int) ($arguments[0])) $this->foo_for_int($arguments[0]);
if(is_string($arguments[0])) $this->foo_for_string($arguments[0]);
} プライベート関数 foo_for_int($x) {
print("ああ、整数だ!");
} プライベート関数 foo_for_string($x) {
print("ああ、文字列だ!")
} $x = 新しいMagic();
$x->foo("3");
__set および __get メソッドです。オブジェクトに存在しない変数やメソッドをキャプチャするために使用できます。
例 9: __set と __get
class foo {
function __set($name,$val) {
print("こんにちは、$name に $val を入れようとしました");
function __get($name) {
print("$name を要求しました")
}
}
$x = new foo();
$x->bar = 3; ;winky_winky);
?>
型の指示
PHP5 では、オブジェクトのパラメータが別のオブジェクトのインスタンスである必要があることを指定できます。
例 10: 型の表示
class foo {
// code ...
}
class bar {
public function process_a_foo(foo $foo) {
// 一部のコード
}
}
$b = new bar();
$f = new foo();
$b->process_a_foo($f);
パラメータ名の前にオブジェクトを明示的に指定できることがわかります。 , PHP5 は、このパラメーターがオブジェクトのインスタンスであることを認識します。
静的メンバー
静的メンバーや静的メソッドは、オブジェクト指向プログラミングの用語では「オブジェクトメソッド(クラスメソッド)」「オブジェクト変数(クラス変数)」と呼ばれます。
「オブジェクトメソッド」は、オブジェクトがインスタンス化される前に呼び出すことができます。同様に、「オブジェクト変数」は、オブジェクトがインスタンス化される前に (オブジェクトの制御にオブジェクトのメソッドを使用せずに) 独立して制御できます。
例 11: オブジェクトのメソッドとオブジェクト変数
class calculator {
static public $pi = 3.14151692;
static public function add($x,$y) {
return $x + $y;
}
$s = calculator::$pi;
$result = calculator::add(3,7);
例外処理は、プログラム エラーを処理するための理想的な方法として認識されており、この概念は Java および C++ で利用可能です。このアプリケーションが PHP5 に追加されたことを嬉しく思います。 「try」と「catch」を使用してプログラム エラーを制御してみることができます。
例 12: 例外処理
class foo {
function dive($x,$y) {
if($y==0) throw new Exception("ゼロで除算できません"); $x/$y を返す
}
}
$x = new foo();
$x->divide(3,0);
} catch (Exception $e) {
echo $e - >getMessage();
echo "n
n";
// ここに致命的な対策があります
?> 上の例では、中括弧で囲まれた関数を実行するために "try" を使用しました。ステートメントでは、エラーが発生した場合、コードは処理のためにエラーを「catch」句に渡します。「catch」句では、エラーが処理のためにオブジェクトに渡されることを指定する必要があります。コード構造を作成する すべてのエラー メッセージをオブジェクトに渡すことができるので、見た目がすっきりします。
カスタム エラー処理
カスタム エラー処理コードを使用して、プログラム内の事故を簡単に制御できます。独自のエラー制御クラスを例外クラスから派生する必要があるだけです。独自のエラー制御クラスには、コンストラクターと getMessage メソッドが必要です。以下にその例を示します。
例 13: カスタム エラー処理
class WeirdProblem extends Exception {
function WeirdProblem($data) {
$this->data = $ data;
}
function getMessage() {
return $this->data . " 奇妙な例外が発生しました!";
}
}
?> これで、「throw new WeirdProblem($foo )」を使用できるようになります。 「try」コードブロックでエラーが発生した場合、PHP5は自動的にエラーを「catch」部分に渡して処理します。
名前空間
名前空間は、クラスや関数をグループ化するのに便利です。関連するクラスや関数をグループ化して、後で簡単に呼び出すことができます。
例 14: 名前空間
namespace Math {
class Complex {
//...code...
function __construct() {
print("hey")
}
}
} $m = new Math::Complex();
?>
実際のアプリケーションでは、同じ名前の 2 つ以上のオブジェクトを宣言する必要がある場合があります。それらを異なる名前空間に置くことができます (ただし、インターフェイスは同じである必要があります)。
http://www.bkjia.com/PHPjc/313864.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/313864.html
技術記事
抽象クラス 抽象クラスはインスタンス化できません。 抽象クラスでは、他のクラスと同様に、変数とメソッドを定義できます。 抽象クラスは抽象メソッドを定義することもできます。抽象クラスのメソッドは実行されません...

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









トマト ノベルは非常に人気のある小説閲覧ソフトウェアです。トマト ノベルでは、新しい小説や漫画を読むことができます。どの小説も漫画もとても面白いです。小説を書きたい友達もたくさんいます。お小遣いを稼いで、小説の内容を編集することもできます。 「テキストに文章を書きたいです。それで、小説はどうやって書くのですか?友達は知らないので、一緒にこのサイトに行きましょう。小説の書き方の入門を少し見てみましょう。」 Tomato Novels を使用して小説を書く方法に関するチュートリアルを共有します。 1. まず、携帯電話で Tomato Free Novels アプリを開き、パーソナル センター - ライター センターをクリックします。 2. Tomato Writer Assistant ページに移動し、次の場所で [新しい本の作成] をクリックします。小説の終わり

Colorful マザーボードは中国国内市場で高い人気と市場シェアを誇っていますが、Colorful マザーボードのユーザーの中には、設定のために BIOS を入力する方法がまだ分からない人もいます。この状況に対応して、編集者はカラフルなマザーボード BIOS に入る 2 つの方法を特別に提供しました。ぜひ試してみてください。方法 1: U ディスク起動ショートカット キーを使用して、U ディスク インストール システムに直接入ります。ワンクリックで U ディスクを起動する Colorful マザーボードのショートカット キーは ESC または F11 です。まず、Black Shark インストール マスターを使用して、Black Shark インストール マスターを作成します。 Shark U ディスク起動ディスクを選択し、コンピュータの電源を入れます。起動画面が表示されたら、キーボードの ESC キーまたは F11 キーを押し続けて、起動項目を順次選択するウィンドウに入ります。「USB」の場所にカーソルを移動します。 」と表示され、その後

残念ながら、WeChat は広く使用されているソーシャル ソフトウェアであり、何らかの理由で特定の連絡先を誤って削除してしまうことがよくあります。ユーザーがこの問題を解決できるように、この記事では、削除された連絡先を簡単な方法で取得する方法を紹介します。 1. WeChat の連絡先削除メカニズムを理解します。これにより、削除された連絡先を取得できるようになります。WeChat の連絡先削除メカニズムでは、連絡先がアドレス帳から削除されますが、完全には削除されません。 2. WeChat の組み込みの「連絡先帳復元」機能を使用します。WeChat には、この機能を通じて以前に削除した連絡先をすばやく復元できる「連絡先帳復元」機能が用意されています。 3. WeChat 設定ページに入り、右下隅をクリックし、WeChat アプリケーション「Me」を開き、右上隅にある設定アイコンをクリックして設定ページに入ります。

テクノロジーの発展に伴い、モバイルゲームは人々の生活に欠かせないものになりました。かわいいドラゴンエッグの画像と面白い孵化過程で多くのプレイヤーの注目を集めており、その中でも注目を集めているゲームの一つがモバイル版ドラゴンエッグです。プレイヤーがゲーム内で自分のドラゴンをより適切に育成し成長させることができるように、この記事ではモバイル版でドラゴンの卵を孵化させる方法を紹介します。 1. 適切な種類のドラゴン エッグを選択する プレイヤーは、ゲーム内で提供されるさまざまな種類のドラゴン エッグの属性と能力に基づいて、自分に適したドラゴン エッグの種類を慎重に選択する必要があります。 2. 孵化機のレベルをアップグレードします。プレイヤーはタスクを完了し、小道具を収集することで孵化機のレベルを向上させる必要があります。孵化機のレベルは孵化速度と孵化成功率を決定します。 3. プレイヤーはゲームに参加する必要がある孵化に必要なリソースを収集します。

携帯電話が人々の日常生活において重要なツールになるにつれて、フォント サイズの設定は重要なパーソナライゼーション要件になりました。さまざまなユーザーのニーズを満たすために、この記事では、簡単な操作で携帯電話の使用体験を向上させ、携帯電話のフォントサイズを調整する方法を紹介します。携帯電話のフォント サイズを調整する必要があるのはなぜですか - フォント サイズを調整すると、テキストがより鮮明で読みやすくなります - さまざまな年齢のユーザーの読書ニーズに適しています - フォント サイズを使用すると、視力の悪いユーザーにとって便利です携帯電話システムの設定機能 - システム設定インターフェイスに入る方法 - 設定インターフェイスで「表示」オプションを見つけて入力します。 - 「フォント サイズ」オプションを見つけて、サードパーティでフォント サイズを調整します。アプリケーション - フォント サイズの調整をサポートするアプリケーションをダウンロードしてインストールします - アプリケーションを開いて、関連する設定インターフェイスに入ります - 個人に応じて

今日の社会において、携帯電話は私たちの生活に欠かせないものとなっています。私たちの日常のコミュニケーション、仕事、生活のための重要なツールとして、WeChat はよく使用されます。ただし、異なるトランザクションを処理する場合は 2 つの WeChat アカウントを分離する必要がある場合があり、そのためには携帯電話が 2 つの WeChat アカウントへの同時ログインをサポートする必要があります。有名な国内ブランドとして、ファーウェイの携帯電話は多くの人に使用されていますが、ファーウェイの携帯電話で 2 つの WeChat アカウントを開設する方法は何でしょうか?このメソッドの秘密を明らかにしましょう。まず、Huawei 携帯電話で 2 つの WeChat アカウントを同時に使用する必要があります。最も簡単な方法は次のとおりです。

Go 言語のメソッドと関数の違いは、構造との関連付けにあります。メソッドは構造に関連付けられ、構造データまたはメソッドを操作するために使用されます。関数は型に依存せず、一般的な操作を実行するために使用されます。

MySQL の複合主キーは、テーブル内の複数のフィールドで構成される主キーを指し、各レコードを一意に識別するために使用されます。単一の主キーとは異なり、複合主キーは複数のフィールドの値を組み合わせて形成されます。テーブルを作成するときに、複数のフィールドを主キーとして指定することにより、複合主キーを定義できます。複合主キーの定義と機能を示すために、最初に users という名前のテーブルを作成します。このテーブルには、id、ユーザー名、電子メールの 3 つのフィールドが含まれます。id は自動インクリメントされる主キー、ユーザーです。
