gpt4 book ai didi

java - 如何声明 Java API 中的方法已弃用我的本地项目?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:12:44 24 4
gpt4 key购买 nike

我正在尝试为我的类添加功能,CustomList , 它扩展了 JList .现在 CustomList 的所有当前用法都调用非覆盖方法 setModel(Listmodel<E> lm)来自 JList .我被困在旧版本的 Java Java 1.6 上,由于删除问题,它不允许我直接覆盖此方法。我的所有研究使我得出结论,我必须重命名此方法并用新命名的方法替换所有当前用法。

我想做的是给其他使用 CustomList 的人一些警告他们需要调用此方法而不是 JList.setModel(ListModel<E> lm) .我不确定如何在本地弃用我的项目的本地方法。

下面显示了一个概述我的新方法的简单示例:

public class CustomList<E> extends JList {
private ArrayList list;
public void newSetModel (ListModel<E> lm){
super.setModel(lm);
list = new ArrayList<Boolean> (lm.getSize());
}
}

请注意,我不能简单地在扩展中使 JList 通用以允许覆盖,因为我坚持使用 Java 1.6

最佳答案

在 Java 中没有明智的方法来做到这一点。

理想情况下,您有一个构建/CI 过程,并且您可以使用工具来执行策略。查看 Checkstyle 和 PMD,也许其中之一可以让您将特定方法调用列入黑名单。

如果做不到这一点,您可以使用像 asm 或 aspectj 这样的低级技术来编写您自己的检查,但这并不容易。或者,您可以老一套,编写一个测试来解析源文件并查找错误的方法调用,但这很容易出错。

我想说你最好的选择是让你的其他团队成员知道。你们做代码审查吗?你应该。

关于java - 如何声明 Java API 中的方法已弃用我的本地项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41510216/

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