
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
55 lines
1.0 KiB
Plaintext
55 lines
1.0 KiB
Plaintext
== Why is this an issue?
|
|
|
|
Each constructor must first invoke a parent class constructor, but it doesn't always have to be done explicitly. If the parent class has a reachable, no-args constructor, a call to it will be inserted automatically by the compiler. Thus, calls to ``++super()++`` can be omitted.
|
|
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,java]
|
|
----
|
|
public class MyClass {
|
|
private Foo foo;
|
|
|
|
public MyClass (Foo foo) {
|
|
super(); // Noncompliant
|
|
this.foo = foo;
|
|
}
|
|
----
|
|
|
|
|
|
=== Compliant solution
|
|
|
|
[source,java]
|
|
----
|
|
public class MyClass {
|
|
private Foo foo;
|
|
|
|
public MyClass (Foo foo) {
|
|
this.foo = foo;
|
|
}
|
|
----
|
|
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
=== Message
|
|
|
|
Remove this "super()" call; it is inserted automatically by the compiler.
|
|
|
|
|
|
'''
|
|
== Comments And Links
|
|
(visible only on this page)
|
|
|
|
=== on 12 Jun 2015, 14:11:56 Ann Campbell wrote:
|
|
CodePro: Invocation of Default Constructor
|
|
|
|
=== on 23 Jul 2015, 07:11:38 Nicolas Peru wrote:
|
|
LGTM
|
|
|
|
endif::env-github,rspecator-view[]
|