`
ivywjhua
  • 浏览: 22067 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java null cast

阅读更多
摘自 Java Language Specification
The null reference can always be cast to any reference type.In practice, the programmer can ignore the null type and just pretend that null is merely a special literal that can be of any reference type.

Object obj = null;
String str = (String) obj;
Integer a = (Integer) obj;
//int b = a;
//NullPointerException


还有一种用法
doSomething( (MyClass) null );

If doSomething is overloaded, you need to cast the null explicitly to MyClass so the right overload is chosen:
详细见:
http://stackoverflow.com/questions/315846/why-null-cast
但是并没有所说的warning
分享到:
评论

相关推荐

    解决mybatis使用char类型字段查询oracle数据库时结果返回null问题

    例如:<select id="selectByName" resultType="com.entity.Data" parameterType="java.lang.String"> select * from data where trim(data.name)=#{name} 通过对char类型字段的特殊处理,可以确保mybatis框架对...

    java通过jdbc连接oracle数据库.doc

    Java通过JDBC连接Oracle数据库是开发中常见的任务,它允许我们与Oracle数据库进行交互,执行SQL语句,处理结果集等。以下是一个详细的步骤指南,以及相关知识点的介绍。 1. **下载Oracle数据库驱动**: Oracle ...

    JAVA常见异常BUG

    #### 四、Java.lang.Integer cannot be cast to java.lang.Long **定义**: 当尝试将 `Integer` 对象强制转换为 `Long` 对象时抛出 `ClassCastException`。 **示例**: 下面的代码会触发 `ClassCastException`: ```...

    javacv-platform-1.3.3-src

    // We can "cast" Pointer objects by instantiating a new object of the desired class. CvHaarClassifierCascade classifier = new CvHaarClassifierCascade(cvLoad(classifierName)); if (classifier.isNull...

    Java开发全面通(教程,实例,资源)

    - **cast**:表示类型转换,用于将一种数据类型转换为另一种数据类型。 - **future**:Java并发编程中的概念,代表异步计算的结果。 - **generic**:泛型编程的关键字,使代码可以更加灵活地处理不同类型的数据。...

    Java的关键字与保留字

    - cast - false - future - generic - inner - operator - outer - rest - true - var - goto - const - null 其中,`true`、`false`和`null`虽然列出为保留字,但实际上已经被用作预定义的常量。`goto`和`const`是...

    icedemo实现对象的传输与返回(java)

    throw new RuntimeException("Failed to cast proxy"); } Request request = new Request(); // 初始化Request对象 // 设置request的属性... Response response = demoProxy.serve(request); // 处理response...

    Java常考面试题及解释

    `Integer`对象可以为`null`,而`int`类型的变量默认值为0。 #### 八、逻辑运算符的区别 **问题**: `&`和`&&`的区别? **解答**: 当`&`和`&&`都用作逻辑运算符时,它们的主要区别在于短路行为: - `&`:始终评估...

    googleGson JsonObject json转换包

    包含以下java源文件: com.google.gson.DefaultDateTypeAdapter.class com.google.gson.ExclusionStrategy.class com.google.gson.FieldAttributes.class com.google.gson.FieldNamingPolicy.class ...

    最新java面试题(基础部分)

    RuntimeException是未检查异常,不需要try catch或在方法上声明,主要子类:NullPointer、Arithmatic、ArrayIndexOutOfBounds、ClassCast。 5. hashCode的作用? hashCode主要是用于快速查找,如HashMap结构中,...

    Java编程面试题锦囊.pdf

    - cast - false - future - generic - inner - operator - outer - rest - true - var - goto (注:尽管`goto`在其他语言中作为关键字使用,但在Java中并未实际使用) - const (再次强调,虽然`const`出现在列表中,...

    java面试800题

    Q0041 Java保留字 11个:byValue, cast, false, future, generic, inner, operator, outer, rest, true, var. Q0042 Java的值传递的规则? Java基本类型的都是值传递,对象使用的都是引用传递 Q0043 java相关概念 ...

    最新java面试题及答案

    RuntimeException是未检查异常,不需要try catch或在方法上声明,主要子类:NullPointer、Arithmatic、ArrayIndexOutOfBounds、ClassCast。 5. hashCode的作用? hashCode主要是用于快速查找,如HashMap结构中,...

    Java中的保留字和关键字.doc

    - cast - false - future - generic - inner - operator - outer - rest - true - var - goto - const - null #### 四、总结 理解和掌握Java的关键字和保留字对于编程至关重要。关键字提供了语言的基础结构和语法...

    java反射学习资料

    此外,还有一些转换操作,如`asSubclass(Class clazz)`和`cast(Object obj)`,分别用于将`Class`对象强制转换为指定子类和将对象强制转换为指定类型。 #### 三、获取类的成员信息 反射提供了一系列方法来获取类的...

    java c++ and c# fileupload

    curl_easy_setopt(curl, CURLOPT_INFILESIZE, static_cast(file.tellg())); res = curl_easy_perform(curl); if(res != CURLE_OK) std::cerr 上传失败: " (res) ; curl_easy_cleanup(curl); file.close(); ...

    Java常见异常

    12. **java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.AnnotationProcessor** 类型转换失败,两个类之间没有继承关系。检查代码中涉及的类实例...

    计算机等级考试二级Java练习题及解析.pdf

    `NULL`不是Java关键字,而`const`和`false`是保留字,`this`是关键字。 10. **Panel布局管理器**:Panel默认使用FlowLayout布局,它将组件按照从左到右、从上到下的顺序排列。 11. **Applet方法**:`update()`、`...

    JAVA的运算符介绍共1页.pdf.zip

    `是Java 8引入的,用于安全地访问可能为null的对象成员和提供默认值。 Java运算符是编程的基础,理解并熟练使用它们是编写高效、可读性强的代码的关键。每个运算符都有其特定的优先级和结合性,学习如何正确使用...

Global site tag (gtag.js) - Google Analytics