java - 添加 "synchronized"会影响方法覆盖吗?

标签 java overriding synchronized

我的问题是:

search_text.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            ArrayList<Object> GPDMvalue = (ArrayList<Object>) multiSortList.getValue();
            ArrayList<Map<String, Object>> valueList = getDefaultValue(GPDMvalue);
            multiSortList.clear();
            if(getGPDMList().size()==0)return;
            multiSortList.setDataSource(getGPDMList());//new thread 1
            multiSortList.setDefaultOrAddValue(valueList);//new thread 2
        }
    });

当文本变化太快,线程1或线程2没有完全执行时,可能是一些问题,所以我想像这样添加synchronized public synchronized void modifyText(ModifyEvent e), 这仍然是覆盖方法吗?它会起作用吗?

最佳答案

“一个方法是否同步是该方法的一个实现细节。同步没有在任何地方指定为声明性契约——你也不能在接口(interface)中同步。

一个类如何实现它提供的任何线程安全保证取决于它。”

取自here

关于java - 添加 "synchronized"会影响方法覆盖吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25071582/

相关文章:

java - 如何仅反转字符串中的数字

java - Android Studio 无法找到有效的 Jvm(与 MAC OS 相关)

java - ReentrantLock 是否足够安全以保护对静态变量的多线程访问

Java 重写私有(private)与公共(public)

java - Java 类中静态成员的锁定获取

java - 尽可能同步一个对象

java - 当我将 url-pattern 更改为 "/"时,无法访问静态资源

java - super 带方法参数

c# - 防止设置控件的 Size 属性?

c++ - 在 WM6+ 上覆盖系统绘图