mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-18 17:20:54 +07:00
88 lines
3.2 KiB
Java
88 lines
3.2 KiB
Java
// access level clashes
|
|
interface i {
|
|
void ff();
|
|
}
|
|
|
|
public class a implements i {
|
|
void <error descr="'ff()' in 'a' clashes with 'ff()' in 'i'; attempting to assign weaker access privileges ('packageLocal'); was 'public'">ff</error>() {}
|
|
}
|
|
class ai implements i {
|
|
public <error descr="'ff()' in 'ai' clashes with 'ff()' in 'i'; attempting to use incompatible return type">int</error> ff() { return 0;}
|
|
}
|
|
|
|
class c2 implements i {
|
|
public c2() {}
|
|
public void ff() {}
|
|
protected void g() {}
|
|
private int fff(String s) { return 0; }
|
|
}
|
|
|
|
class c3 extends c2 {
|
|
protected c3() {}
|
|
private int g(int k) { return 2;}
|
|
private char fff(String s) { return 0; }
|
|
}
|
|
|
|
class c4 extends c3 {
|
|
private c4() {}
|
|
<error descr="'g()' in 'c4' clashes with 'g()' in 'c2'; attempting to assign weaker access privileges ('private'); was 'protected'">private</error> void g() {}
|
|
private String fff(String s) throws java.io.IOException { return null; }
|
|
}
|
|
class c4i extends c3 {
|
|
protected <error descr="'g()' in 'c4i' clashes with 'g()' in 'c2'; attempting to use incompatible return type">Object</error> g() {return null;}
|
|
}
|
|
|
|
// sibling inheritance
|
|
abstract class c5 { abstract public int ff(); }
|
|
interface i5 { void ff(); }
|
|
<error descr="'ff()' in 'i5' clashes with 'ff()' in 'c5'; methods have unrelated return types">abstract class c6 extends c5 implements i5</error> {
|
|
}
|
|
|
|
class c7 { public String ff() { return null;} }
|
|
<error descr="'ff()' in 'c7' clashes with 'ff()' in 'i5'; attempting to use incompatible return type">class c8 extends c7 implements i5</error> {
|
|
}
|
|
|
|
// interface should not clash with Object
|
|
interface A {
|
|
Object clone() throws CloneNotSupportedException;
|
|
void finalize();
|
|
|
|
<error descr="'hashCode()' in 'A' clashes with 'hashCode()' in 'java.lang.Object'; attempting to use incompatible return type">void</error> hashCode();
|
|
<error descr="'equals(Object)' in 'A' clashes with 'equals(Object)' in 'java.lang.Object'; attempting to use incompatible return type">void</error> equals(Object o);
|
|
<error descr="'toString()' in 'A' clashes with 'toString()' in 'java.lang.Object'; attempting to use incompatible return type">void</error> toString();
|
|
}
|
|
|
|
interface ConflictWithObject {
|
|
Object clone() throws CloneNotSupportedException;
|
|
}
|
|
<error descr="'clone()' in 'java.lang.Object' clashes with 'clone()' in 'ConflictWithObject'; attempting to assign weaker access privileges ('protected'); was 'public'">class s implements ConflictWithObject</error> {
|
|
|
|
}
|
|
|
|
// parallel overriding methods from Object
|
|
interface InderFace {
|
|
Object clone() throws CloneNotSupportedException;
|
|
}
|
|
|
|
interface SubInderFace extends InderFace {
|
|
}
|
|
|
|
<error descr="'clone()' in 'java.lang.Object' clashes with 'clone()' in 'InderFace'; attempting to assign weaker access privileges ('protected'); was 'public'">class Implementation implements SubInderFace</error> {
|
|
}
|
|
|
|
|
|
|
|
//SCR20002
|
|
abstract class SCR20002A extends Object implements Runnable {
|
|
protected abstract int getSome();
|
|
private final Inner getInner() { return null; }
|
|
private class Inner { }
|
|
}
|
|
|
|
abstract class SCR20002B extends SCR20002A implements Runnable {
|
|
private final Inner getInner() { return null; }
|
|
private class Inner { }
|
|
}
|
|
abstract class SCR20002C extends SCR20002B implements Runnable {
|
|
}
|