class CallToDeprecatedMethod {
public CallToDeprecatedMethod() {
String string = new String("my string");
string.getBytes(1, 1, new byte[3], 7); // Noncompliant [[sc=12;ec=20]] {{Remove this use of "getBytes"; it is deprecated.}}
new DeprecatedConstructor(); // Noncompliant [[sc=9;ec=30]] {{Remove this use of "DeprecatedConstructor"; it is deprecated.}}
new MyDeprecatedClass(); // Noncompliant
old++; // Noncompliant
MyDeprecatedClass.a++; // Noncompliant
}
void useDeprecatedEum(Object o) {
useDeprecatedEum(DeprecatedEnum // Noncompliant
.A); // Noncompliant
useDeprecatedEum(DeprecatedEnum // Noncompliant
.B); // Noncompliant
useDeprecatedEum(PartiallyDeprecatedEnum.C);
useDeprecatedEum(PartiallyDeprecatedEnum.D); // Noncompliant
}
@Deprecated
int old;
@Deprecated
private static class MyDeprecatedClass {
static int a;
}
public static class ExtendsDeprecatedClass extends MyDeprecatedClass { // Noncompliant [[sc=54;ec=71]] {{Remove this use of "MyDeprecatedClass"; it is deprecated.}}
}
public static abstract class ClassWithDeprecatedMethods {
@Deprecated
public void deprecatedMethod1() {
}
@Deprecated
public void deprecatedMethod2() {
}
@Deprecated
public abstract void deprecatedMethod3();
}
public interface InterfaceWithDeprecatedMethods {
@Deprecated
public void deprecatedMethod4();
}
public static class ClassOverridingDeprecatedMethods extends ClassWithDeprecatedMethods implements InterfaceWithDeprecatedMethods {
public void deprecatedMethod1() { // Noncompliant [[sc=17;ec=34]] {{Don't override a deprecated method or explicitly mark it as "@Deprecated".}}
}
@Deprecated
public void deprecatedMethod2() { // Compliant, explicitely marked as "@Deprecated"
}
public void deprecatedMethod3() { // Compliant, override abstract method
}
public void deprecatedMethod4() { // Compliant, override interface
}
}
private static class DeprecatedConstructor {
@Deprecated
public DeprecatedConstructor() {
"".getBytes(1, 1, new byte[3], 7);
}
String a = new String(new byte[3], 7); // Noncompliant
}
@Deprecated
class A {
Object a = new DeprecatedConstructor();
}
class B {
@Deprecated
void foo() {
Object a = new DeprecatedConstructor();
"".getBytes(1, 1, new byte[3], 7);
}
}
}
@Deprecated
enum DeprecatedEnum {
A,
B;
}
enum PartiallyDeprecatedEnum {
C,
@Deprecated D;
}