Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Node<T> {
- public T data;
- public Node(T data) { this.data = data; }
- public void setData(T data) {
- System.out.println("Node.setData");
- this.data = data;
- }
- }
- class MyNode extends Node<Integer> {
- public MyNode(Integer data) { super(data); }
- public void setData(Integer data) {
- System.out.println("MyNode.setData");
- super.setData(data);
- }
- }
- public class Example {
- public static void main(String[] args) {
- MyNode mn = new MyNode(5);
- Node n = mn;
- n.setData("Hello");
- Integer x = mn.data;
- }
- }
- public class Node {
- public Object data;
- public Node(Object data) { this.data = data; }
- public void setData(Object data) {
- System.out.println("Node.setData");
- this.data = data;
- }
- }
- public class MyNode extends Node {
- public MyNode(Integer data) { super(data); }
- public void setData(Integer data) {
- System.out.println("MyNode.setData");
- super.setData(data);
- }
- }
- public class Example {
- public static void main(String[] args) {
- MyNode mn = new MyNode(5);
- Node n = (MyNode) mn
- n.setData("Hello");
- Integer x = (String) mn.data;
- }
- }
- public void setData(Object data) {
- setData((Integer) data);
- }
- public void setData(java.lang.Object);
- descriptor: (Ljava/lang/Object;)V
- flags: ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
- Code:
- stack=2, locals=2, args_size=2
- 0: aload_0
- 1: aload_1
- 2: checkcast #6 // class java/lang/Integer
- 5: invokevirtual #7 // Method setData:(Ljava/lang/Integer;)V
- 8: return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement