草庐IT

unchecked-cast

全部标签

java - 警告 : [unchecked] unchecked conversion

我在这里遇到泛型问题。谁能指出我在以下陈述中遗漏了什么?1.warning:[unchecked]uncheckedconversionListqList=(List)session.getAttribute("qList");^required:Listfound:List2.warning:[unchecked]uncheckedconversionListeList=newArrayList();required:Listfound:ArrayList我不想隐藏警告。任何建议将不胜感激。 最佳答案 ListqList=(Lis

java - Java 中是否有类似于 C++ 中的 <reinterpret_cast> 的转换

我在我的函数消息数组中得到了字节和对象类型,我需要从字节中恢复对象。Java中是否有像C++中那样的强制转换? 最佳答案 不,你可以使用serialization相反。 关于java-Java中是否有类似于C++中的的转换,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4805058/

java:结合了instanceof和cast?

(请不要建议我应该对X进行更多抽象并向其添加另一个方法。)在C++中,当我有一个变量x类型X*如果它也是Y*类型,我想做一些具体的事情(Y是X的子类),我这样写:if(Y*y=dynamic_cast(x)){//nowdosthwithy}同样的事情在Java中似乎是不可能的(或者是吗?)。我已经阅读了这段Java代码:if(xinstanceofY){Yy=(Y)x;//...}有时,当您没有变量时x但它是一个更复杂的表达式,正因为这个问题,你需要在Java中使用一个虚拟变量:Xx=something();if(xinstanceofY){Yy=(Y)x;//...}//xnotn

java - 为什么Java中的运行时异常是 "unchecked"?

为什么让运行时异常UnChecked(而不是如果它们被Checked)有意义? 最佳答案 如果不这样做,则每次访问数组元素、执行除法运算和许多其他常见场景时都必须使用try/catchblock。换句话说,想象一下这段代码:Mapmap=...inti=...(int[])map.get("foo")[3]=2334/i;必须检查ClassCastException、ArrayIndexOutofBoundsException、ArithmeticException、UnsupportedOperationException和Nul

java - 错误 : unchecked call to DefaultComboBoxModel(E[])

当我构建/运行由NetBeansAppletForm制作的applet时,出现2个错误:warning:[unchecked]uncheckedcalltoDefaultComboBoxModel(E[])asamemberoftherawtypeDefaultComboBoxModellevelBox.setModel(newjavax.swing.DefaultComboBoxModel(newString[]{"1","2","3","4","5","6","7"}));whereEisatype-variable:EextendsObjectdeclaredinclassDef

Java 多态性 : How can I avoid type casting input parameters?

假设我们有一个带有compare()函数的Parent接口(interface)。publicinterfaceParent{publicintcompare(ParentotherParent);}假设childChild1、Child2、Child3实现了这个接口(interface)ParentpublicclassChild1implementsParent{@Overridepublicintcompare(Parentother){Child1otherChild=(Child1)other;}}此外,我正在使用泛型代码中的其他地方。所以我需要从代码的其他部分比较两个类型为

java - 为什么异常被命名为checked和unchecked?

为什么Java中的两种异常类型分别命名为“checked”和“unchecked”?这些名称背后的原因是什么? 最佳答案 如果您调用的方法声明为抛出已检查异常(例如IOException),编译器将检查您是否你要么捕获它,要么声明你重新扔掉它。同样,为了首先抛出此类已检查异常,编译器检查您是否已将其声明为方法签名的一部分。基本上,它有点像类型检查,不同之处在于方法可以抛出哪些异常。编译器不会对未经检查的异常执行任何检查-因此它们可以由任何方法抛出,而无需方法声明它们。 关于java-为什

Java 最佳实践 : casting objects vs interfaces

假设我们有以下玩具界面:interfaceSpeakable{publicabstractvoidSpeak();}interfaceFlyer{publicabstractvoidFly();}我们有一个实现这两个接口(interface)的类:classDuckimplementsSpeakable,Flyer{publicvoidSpeak(){System.out.println("quackquackdon'teatmeItastebad.");}publicvoidFly(){System.out.println("Iamflying");}}在这一点上,我看到了调用Duc

java - 内存不足错误 : Java heap space when casting a numeric primitive to char

我一直在研究Decorator模式并开发了简单的类ToUpperCaseInputStream。我覆盖了read()方法,因此它可以将所有字符从InputStream转换为大写。该方法的代码如下所示(抛出OutOfMemoryError):@Overridepublicintread()throwsIOException{returnCharacter.toUpperCase((char)super.read());}我后来发现,转换为char是多余的,但这不是重点。当代码出现“java.lang.OutOfMemoryError:Java堆空间”时:((char)super.read

java.lang.ClassCastException : [B > cannot be cast to java. lang.String

publicLoginauthenticate(Loginlogin){try{MessageDigestmd=MessageDigest.getInstance("SHA-256");Stringpassword=login.getPassword();try{md.update(password.getBytes("UTF-16"));byte[]digest=md.digest();Stringquery="SELECTLFROMLoginASLWHEREL.email=?ANDL.password=?";Object[]parameters={login.getEmail(),