遅延静的束縛(レイト スタティック バインディング : Late Static Bindings)

Human Resocia Co.,Ltd.

2015-09-25 09:00

ヒューマンリソシア株式会社はコラム「遅延静的束縛(レイト スタティック バインディング : Late Static Bindings)」を公開しました。
###

LSBと省略されることもある「遅延静的束縛」について学んでいきましょう。
上級の試験範囲にもある上に機能としても大切なものです。

まずは、PHPマニュアルから引用してみましょう。
(リンク »)

PHP 5.3.0 以降、PHP に遅延静的束縛と呼ばれる機能が搭載されます。
これを使用すると、静的継承のコンテキストで呼び出し元のクラスを参照できるようになります。
より正確に言うと、遅延静的束縛は直近の “非転送コール” のクラス名を保存します。
静的メソッドの場合、これは明示的に指定されたクラス (通常は :: 演算子の左側に書かれたもの) となります。
静的メソッド以外の場合は、そのオブジェクトのクラスとなります。

…これで分かる人がいたら「すごいなぁ」と本気でおいちゃんは思うわけなのですが。
実際の所、さほど「物凄く奇異だったり奇妙だったりする事」をやっているわけではなくて。
「クラス継承時、普通にインスタンスからアロー演算子でアクセスする時と同じような挙動になるような事ができるよ」っていうだけの、分かってしまえばとても素直な機能になります。

日本語で説明をするより、コードを重ねて説明するのが一番早いので、いくつかのコードで説明をしていきましょう。
まずは、LSBとは関係ないっぽくみえる、普通の「newでインスタンス作る」系の、継承を交えたクラスの挙動です

この続きは以下をご覧ください
(リンク »)
本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。

【企業の皆様へ】企業情報を掲載・登録するには?

御社の企業情報・プレスリリース・イベント情報・製品情報などを登録するには、企業情報センターサービスへのお申し込みをいただく必要がございます。詳しくは以下のページをご覧ください。

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    「デジタル・フォレンジック」から始まるセキュリティ災禍論--活用したいIT業界の防災マニュアル

  2. 運用管理

    「無線LANがつながらない」という問い合わせにAIで対応、トラブル解決の切り札とは

  3. 運用管理

    Oracle DatabaseのAzure移行時におけるポイント、移行前に確認しておきたい障害対策

  4. 運用管理

    Google Chrome ブラウザ がセキュリティを強化、ゼロトラスト移行で高まるブラウザの重要性

  5. ビジネスアプリケーション

    技術進化でさらに発展するデータサイエンス/アナリティクス、最新の6大トレンドを解説

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]