gpt4 book ai didi

Java 弃用注释

转载 作者:太空宇宙 更新时间:2023-11-04 07:52:49 25 4
gpt4 key购买 nike

我按照这里的人的指示创建了两个类,现在将已弃用的函数从一个类调用到另一个类(请参阅我之前的 Question )。

我什至将 @SuppressWarnings 行放在函数调用上,但它仍然不起作用。我不明白为什么。我需要使用 @SuppressWarnings 注释来阻止显示弃用警告。谁能告诉我把它放在哪里?

已弃用的类

import java.lang.annotation.*;

@Retention(RetentionPolicy.RUNTIME)

@interface number {
String arm();
}

public class armstrong {
@Deprecated
@number(arm = "Armstrong number")
public static void armStrong(int n) {
int temp, x, sum = 0;
temp = n;
while(temp!=0) {
x = temp % 10;
sum = sum + x * x * x;
temp = temp / 10;
}
if(sum == n) {
System.out.println("It is an armstrong number");
}
else {
System.out.println("It is not an armstrong number");
}
}
}

使用已弃用的类

import java.util.Scanner;
import java.lang.annotation.*;
import java.lang.reflect.Method;

public class Ch10LU2Ex4 {
public static void main(String[] args) {
try {
System.out.println("Enter a number between 100 and 999:");
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
@SuppressWarnings("deprecation")
armstrong obj = new armstrong();
obj.armStrong(x);
Method method = obj.getClass().getMethod("armStrong", Integer.TYPE);
Annotation[] annos = method.getAnnotations();
for(int i = 0; i<annos.length; i++) {
System.out.println(annos[i]);
}
}
catch(Exception e) {
e.printStackTrace();
}
}
}

最佳答案

注释@SuppressWarnings("deprecation")附加到默认构造函数。

警告不会改变执行

警告仅针对编译时

您必须将 @SuppressWarnings("deprecation") 指向方法 main 本身或类 Ch10LU2Ex4!

import java.util.Scanner;
import java.lang.annotation.*;
import java.lang.reflect.Method;

public class Ch10LU2Ex4 {
@SuppressWarnings("deprecation")
public static void main(String[] args) {
try {
System.out.println("Enter a number between 100 and 999:");
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
armstrong obj = new armstrong();
obj.armStrong(x);
Method method = obj.getClass().getMethod("armStrong", Integer.TYPE);
Annotation[] annos = method.getAnnotations();
for(int i = 0; i<annos.length; i++) {
System.out.println(annos[i]);
}
}
catch(Exception e) {
e.printStackTrace();
}
}
}

关于Java 弃用注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14159566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com