PHP 5ではプライベート/保護されたメソッドを持つインタフェースを持つことは可能ですか?private/protectedメソッドを持つインターフェイスを使用することはできますか?
は、今私が持っている:
エラーがスローされますinterface iService
{
private method1();
}
:
Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE
私はちょうどそれがインターフェースはパブリックメソッドのみを含めることができる場合であることの確認を持っていると思います。
私は答えが失望していることがわかります。私は、保護された/私的な方法をサポートするインターフェースも望みます。たとえば、抽象クラスで実装されたパブリックメソッドは、サブクラスによって実装される保護されたメソッドに依存するクラスを持っています。私は、サブクラスが抽象パブリックメソッドで必要とされる保護されたメソッドを実装するようにインターフェイスを使用する必要があります。 – Stoutie
その目的で抽象基本クラスを使用します。 2つのアプローチを組み合わせることができます。インタフェース内のパブリックメソッド、抽象メソッドを定義する抽象的な基本クラス内のメソッドの実装 –
プライベートメソッドまたはプロテクトメソッドを宣言できれば、 'private; private method1();ではなく' private function method1(); 'となります。 – turibe