PHP のオーバーロードとリライトの違いは何ですか? オーバーロードと他の言語 (Java など) の違いは何ですか?

WBOY
リリース: 2016-08-04 09:20:43
オリジナル
849 人が閲覧しました

質問:
PHPマニュアルのオーバーロードに関する内容は次のとおりです: PHPが提供する「オーバーロード」とは、クラスの属性とメソッドを動的に「作成」することを指します。
私たちは魔法の方法でそれを行います。
__call($funcname, $arguments)、__callStatic($funcname, $arguments) など

JAVA言語におけるオーバーロードとは、名前は同じでもパラメータや定義が異なる複数のメソッドを作成できることを意味します。

メソッドを呼び出すときは、メソッドに渡されるパラメータの数と種類に基づいて、どのメソッドを使用するかを決定します。

質問: PHP と Java ではオーバーロードの概念に間違いなく違いがありますが、本当の違いは何なのかわかりません。

返信内容:

質問:
PHPマニュアルのオーバーロードに関する内容は次のとおりです: PHPが提供する「オーバーロード」とは、クラスの属性とメソッドを動的に「作成」することを指します。
私たちは魔法の方法でそれを行います。
__call($funcname, $arguments)、__callStatic($funcname, $arguments) など

JAVA言語におけるオーバーロードとは、名前は同じでもパラメータや定義が異なる複数のメソッドを作成できることを意味します。

メソッドを呼び出すときは、メソッドに渡されるパラメータの数と種類に基づいて、どのメソッドを使用するかを決定します。

質問: PHP と Java ではオーバーロードの概念に間違いなく違いがありますが、本当の違いは何なのかわかりません。

Java は厳密に型指定されています

リーリー

PHP のいわゆるオーバーロードは、いくつかの魔法のメソッドを同様に書き直すだけです
コメントには良い言葉があります

この記事では、このテクニックを「インタープリターフック」と呼ぶことにします。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート