java-learning
java-learning copied to clipboard
旨在打造在线最佳的 Java 学习笔记,含博客讲解和源码实例,包括 Java SE 和 Java Web
``` int a = biggerOne(3,5); //int 和 double,取交为Number Number b = biggerOne(3,5.5); System.out.println(b.getClass().getName()); //String和int 取交为Object Object c = biggerOne("1",2);`` ``` 关于为什么b是Double类型的猜测。 这应该是多态,类如Number b = new Double(); 而为什么将Number改为Double报错,应该是因为泛型T可能的值有两个int和double,做了类型限制,这样代码更加灵活,出错率低。
getData1 and getData2 未在同步代码块内打印,导致打印前被另一线程更改值。
 如题图