假设我有一个Foo实现接口的类,如MouseListener.该MouseListener接口由五个方法组成,但我只希望覆盖其中一个(mouseClicked()).是否有一种标准的,惯用的格式化其他方法的方法?
我倾向于写下以下内容:
@Override
public void mouseClicked(MouseEvent e) {
// (...) <-- actual code here
}
@Override
public void mouseEntered(MouseEvent e) {
// Do nothing. Exists to satisfy MouseListener interface.
}
@Override
public void mouseExited(MouseEvent e) {
// Do nothing. Exists to satisfy MouseListener interface.
}
@Override
public void mousePressed(MouseEvent e) {
// Do nothing. Exists to satisfy MouseListener interface.
}
@Override
public void mouseReleased(MouseEvent e) {
// Do nothing. Exists to satisfy …Run Code Online (Sandbox Code Playgroud) 对于文件NSPasteboard的-types内容如下:
回报价值
一组NSString对象,包含为接收器上的所有粘贴板项声明的数据类型的并集.返回的类型按声明的顺序列出.
尽管如此,我NSPasteboard只有一个NSPasteboardItem并[pboard types]返回更多类型而不是[item types]返回.有谁能解释一下?
这里有一些证明问题的代码:
- (BOOL)performDragOperation:(id <NSDraggingInfo>)sender {
NSPasteboard *pboard = [sender draggingPasteboard];
// Prove that there's only one item
if ([[pboard pasteboardItems] count] > 1)
return NO;
for (NSString* type in [pboard types])
NSLog(@"Pasteboard type: %@", type);
NSPasteboardItem* item = [[pboard pasteboardItems] objectAtIndex:0];
for (NSString* type in [item types])
NSLog(@"Item type: %@", type);
return NO; // Ignore for example
}
Run Code Online (Sandbox Code Playgroud)
当我从Safari拖动链接时,我得到以下输出:
Pasteboard …Run Code Online (Sandbox Code Playgroud)