我对桥接方法创建有一些疑问。我们可以将桥接技术应用于协变覆盖。现在考虑官方帮助中的示例:
public class Node<T>{
private T data;
public Node(T data){ this.data=data;}
public void setData(T data){
System.out.println("Node.setData");
this.data=data;
}
}
public class MyNode extends Node<Integer>{
public MyNode(Integer data){ super(data); }
public void setData(Integer data){
System.out.println("MyNode.setData");
this.data=data;
}
}
让桥方法不创建。因此,在运行时类有MyNode
两种方法:last 继承自. 当我们打电话时会打电话。如果我们写然后会调用。这不是真的。所以两个问题:setData(Integer)
setData(Object)
Node
setData(new Inetegr(5))
setData(Integer)
Object o= new Integer(5); setData(o);
setData(Object)
- 我是否正确理解引入桥接方法的原因?
- 建立桥梁方法的必要和充分条件是什么?