0
私の質問は多少不相応かもしれません。私は、抽象クラスメソッドのオーバーライドがどのように機能するかを実際に理解できません。私はOrderControllerをModelクラス自体から派生したOrderモデルを受け付けるメソッドを持っていますが、なぜそれはエラーをスローしますか?インタフェースを実装する抽象クラスのメソッドオーバーライド
interface CrudInterface
{
public function show(Model $model);
}
abstract class CrudController extends Controller implements CrudInterface {
public function show(Model $model)
{
return $model;
}
}
class OrderController extends CrudController {
// Throws an erorr ("
// Declaration of App\Http\Controllers\OrderController::show(App\Order $order) should be compatible with
// App\Http\Controllers\CrudController::show(Illuminate\Database\Eloquent\Model $model
// ")
public function show (Order $order) {
return $order
}
}
ありがとうございます。
は 'Order'クラスは' Model'クラスを拡張していますか? –
はいモデルを拡張します。 –