see java.awt.datatransfer.*;
clipboardowner的作用是在你改变当前内容是,通知当前的剪贴板数据的拥有者,也就是上一次setContent(至少是上一次java程序,其他win程序我不清楚)的ClipboardOwener,它放在剪贴板中的数据将被替换,让它作出处理,
它是一个接口只有一个方法,
    public void lostOwnership(Clipboard clipboard, Transferable contents);
如果你认为你的剪贴板数据被其他程序替换也无所谓,就写一个空的lostOwnership
比如setContents(Transferable contents, new ClipboardOwner(){
    public void lostOwnership(Clipboard clipboard, Transferable contents){}
});
如果要进行操作,那么
    public void lostOwnership(Clipboard clipboard, Transferable contents);
中的clipboard参数就是你上次setContents的地方,contents就是其数据