Tag: 类型

Generics Hell:我可以使用generics构建TypeLiteral <Set >吗?

我能够使下面的generics方法工作的唯一方法是传递看似冗余的TypeLiteral<Set>参数。 我认为应该可以在给定其他参数的情况下以编程方式构造此参数,但无法弄清楚如何。 protected Key<Set> bindMultibinder( TypeLiteral<Set> superClassSet, TypeLiteral superClass) { final Key<Set> multibinderKey = Key.get(superClassSet, randomAnnotation); return multibinderKey; } 客户端代码如下: bindMultibinder(new TypeLiteral<Set<A>>(){}, new TypeLiteral<A>(){}); 其中A和B是接口。 如果我尝试以下(删除TypeLiteral<Set> superClassSet参数),我得到一个java.util.Set cannot be used as a key; It is not fully specified. java.util.Set cannot be used as a key; It is not fully specified. 运行时错误。 protected Key<Set> bindMultibinder(TypeLiteral superClass) […]

如何“动态”将Object类型的实例强制转换为其特定的数据类型?

public Object foo(int opt){ if (opt == 0) return new String(); else if (opt == 1) return new Integer(1); else if (opt == 2) return new Double(1); else if … .. and many more } public void doSomething(String s){..} public void doSomething(Integer i){..} public void doSomething(Double d){..} … and many more doSomething method public static […]

eclipse 3.4(ganymede)包与类型碰撞

我们有一个以例外结束的包 package abcexception; 我们的代码库在eclipse 3.3之前没有任何问题,但是当我们转移到eclipse 3.4时,它开始给出与这个包有关的错误: “The package abcexception collides with a type” 当我将包名重构为abcexceptions时,没有问题。 这是由于eclipse 3.4中的错误还是有一些设置来纠正这种行为?

为什么java要求在本地变量时初始化变量

请参阅下面的代码。 方法printTest()打印未初始化变量的默认值,但是当它涉及main方法时,java要求变量初始化。 任何人都可以解释原因吗? public class Test1 { public static void main(String[] args) { int j; String t; System.out.println(j); System.out.println(t); } } public class Test2 { int i; String test; public static void main(String[] args) { new Test().printTest(); } void printTest() { System.out.println(i); System.out.println(test); } }

Hibernate TypeResolver

我知道hibernate最近在3.6中重写了它的类型系统。 我认为现在允许您将java类与Type(或UserType)相关联。 例如,我使用joda-time并有一些UserTypes将LocalDate和LocalDateTime映射到适当的SQL类型。 这在使用对象时工作正常,但是如果我想将joda类型作为HQL参数传递,则hibernate会变得混乱,因此我必须记住每次拨打电话时都提供Type。 query.setParameter( “now”, new LocalDateTime(), Hibernate.custom( LocalDateTimeType.class ) ); 我认为现在可以在Configuration / SessionFactory设置阶段说LocalDateTime – > LocalDatetimeType但我不知道如何做到这一点。 我找到了TypeResolver,但是在解密我应该调用哪个方法来实现这一点时遇到了麻烦。 或者请纠正我,如果这是不可能的,即使3.6中的新类型的东西。

Java启动错误选择不包含主类型

我是Java和Eclipse的新手。 我google了很多帮助,但仍然困惑。 从Eclipse中单击运行然后选择Java应用程序,我立即收到此错误。 这是我的源代码: import java.util.Arrays; import java.util.Scanner; public class SliceandDice { void main(String args[]) { System.out.println(“This is the BIGGEST program console”); System.out.println(“Each input line will be a pair of numbers separated by a COMMA.”); System.out.println(“First number must be an unsigned number less than 10000. Max example: 9999”); System.out.println(“Second number is the ‘target’ number.”); System.out.println(“Example […]

可以将java程序“键入”到另一个像记事本这样的Windows程序中

无论如何从JAVA进程输入notepad.exe进程?

获得通用类

我的class级开始 public abstract class LastActionHero(){ 现在代码中的某个地方我想编写H.class但是这是不可能的(比如String.class或Integer.class )。 你能告诉我如何获得通用的Class吗?

子类在哪些方面与使用中的子类不同?

当通过扩展或实现链接类时,建立子类型。 亚型也用于generics。 如何区分子类型和子类?

将字节提升为int或long

如果我有一个字节值00101011并且我想将其表示为int值我有: 00000000000000000000000000101011 ,对我来说似乎很清楚。 我有字节值11010100问题,其中int由11111111111111111111111111010100表示。 我不知道它来自哪里。 有人能解释我将扩展字节值转换为int的想法吗?