A final
class must not have final
methods and private
methods must
not be final
.
Warning
Using this rule is risky.
Risky when child class overrides a private
method.
Private methods of non-final
classes must not be declared final
.
Allowed types: bool
Default value: true
Default configuration.
--- Original
+++ New
@@ -1,12 +1,12 @@
<?php
final class Foo
{
- final public function foo1() {}
- final protected function bar() {}
- final private function baz() {}
+ public function foo1() {}
+ protected function bar() {}
+ private function baz() {}
}
class Bar
{
- final private function bar1() {}
+ private function bar1() {}
}
With configuration: ['private_methods' => false]
.
--- Original
+++ New
@@ -1,5 +1,5 @@
<?php
final class Foo
{
- final private function baz() {}
+ private function baz() {}
}
The rule is part of the following rule sets:
- @PHP80Migration:risky
- Using the @PHP80Migration:risky rule set will enable the
no_unneeded_final_method
rule with the default config. - @PhpCsFixer:risky
- Using the @PhpCsFixer:risky rule set will enable the
no_unneeded_final_method
rule with the default config. - @Symfony:risky
- Using the @Symfony:risky rule set will enable the
no_unneeded_final_method
rule with the default config.