Java中常见null简析
对于每一个Java程序员来说,null肯定是一个让人头痛的东西,今天就来总结一下Java中关于null的知识。
1.null不属于任何类型,可以被转换成任何类型,但是用instanceof永远返回false.
2.null永远不能和八大基本数据类型进行赋值运算等,否则不是编译出错,就是运行出错.
3.null可以和字符串进行运算.
4.同种类型的null,比较都返回true,null==null也返回true.
下面将用例子来验证上面的四点
首先来看看下面的一道题:
public class Null{public static void nihao(){System.out.println("你好陌生人");}public static void main(String[] args){((Null)null).nihao();}}
A、你好陌生人
B、编译不通过
C、编译通过,执行报错
D、内存溢出
答案是A
下面的总结将使你很清晰的了解到上面程序为什么成为这样的结果:
1.null是Java中的关键字,它不属于任何类型,只是一种特殊的值,也可以说说代表一个不确定的对象.
2.null是所有引用类型的默认值.
3.null可以被转化为任何类型,输出null不会抛出任何异常,这和println()的源代码有关.
4.null可以被转化为任何类型,所以可以调用静态方法.
5.null可以被转化为任何类型,但是不能调用非静态方法,运行时会出错.
6.null被强转化任何类型后,它还仅仅是一个特殊值,并不属于任何类型.
7.null==null返回true,被转换为同种类型的null,都返回true,不同类型直接编译报错.
8.用String转换后的null可以进行字符串运算,这是因为字符串进行连接的时候,编译器对null进行了特别的优化,其实就是例化StringBuilder,在调用append()方法时对null的一个特别处理,当为null时,转化为“null”,最后调用toString()返回一个String对象.
9.用八大基本类型转换后的null,不可以进行基本类型的运算,否则会出现编译或者运行错误.
10.null和“”并不相等,因为下面的s并没有指向某一块内存,而s1指向了一块空字符串的内存.
Java中常见null简析相关推荐
- java 常见 错误_JAVA几个常见错误简析
JAVA几个常见错误简析 Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的.下面就来和小编一起看看JAVA几个常见 ...
- java 0x01什么意思_null有哪些常见的意思?(Java中的null到底是什么意思?)
让我们从下面的陈述开始: 1. 这句话到底是什么意思? 回想一下什么是变量,什么是值. 一个常见的比喻是变量类似于一个盒子. 就像您可以使用一个框来存储某些东西一样,您也可以使用一个变量来存储一个值. ...
- JAVA中常见的Exception
这篇文章转载自 : JAVA中常见的Exception 常见的几种如下: NullPointerException - 空指针引用异常 ClassCastException - 类型强制转换异常. I ...
- java 返回空数组_避免在Java中检查Null语句
1.概述 通常,在Java代码中处理null变量.引用和集合很棘手.它们不仅难以识别,而且处理起来也很复杂.事实上,在编译时无法识别处理null的任何错误,会导致运行时NullPointerExcep ...
- java 删除二维数组中的null_避免在Java中检查Null语句
1.概述 通常,在Java代码中处理null变量.引用和集合很棘手.它们不仅难以识别,而且处理起来也很复杂.事实上,在编译时无法识别处理null的任何错误,会导致运行时NullPointerExcep ...
- Java中常见RuntimeException与其他异常表及Exception逻辑关系详解
Java中常见RuntimeException与其他异常表及Exception逻辑关系详解 前言 常见`RuntimeException` 其他错误类型 `Error`类 `Exception`类 E ...
- Java中常见的各种锁-超全面
Java中常见的各种锁(非常全): 原文链接:https://blog.csdn.net/xingchensuiyue/article/details/108716466 乐观锁 乐观锁是一种乐观思想 ...
- Java中有关Null的9件事
对于Java程序员来说,null是令人头痛的东西.时常会受到空指针异常(NPE)的骚扰.连Java的发明者都承认这是他的一项巨大失误.Java为什么要保留null呢?null出现有一段时间了,并且我认 ...
- Java基础-JAVA中常见的数据结构介绍
Java基础-JAVA中常见的数据结构介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是数据结构 答:数据结构是指数据存储的组织方式.大致上分为线性表.栈(Stack) ...
最新文章
- DELPHI - Delphi 2007 已内部支持 GIF 动画了
- linux文件夹前的描述,Linux对内存结构的描述
- 《github一天一道算法题》:插入排序
- NYOJ 933 Bob's Print Service
- vuejs实现本地数据的筛选分页
- HDU - 4289 Control(最小割-最大流)
- 日常琐事的记录,每周六晚做一次总结整理
- 定编定岗定员方案_定岗、定编、定员实施方案 (讨论稿)
- android 过滤蓝光软件下载,蓝光过滤器app下载-蓝光过滤器(熬夜护眼必备)下载v1.4.7安卓版-西西软件下载...
- SQLDBX找不到服务器 no server found
- X86 将死?RISC-V 正当立
- 学习webpy官网示例笔记
- springboot的精髓
- 为drupal安装 Php + Apache 的参考文章
- Oracle公有云上的ADG配置(单实例)
- 网易云音乐mp3外链-真实地址下载方法
- NPDP笔记 第一章 战略
- javascript实现下拉条联动_js实现下拉框联动
- 王润涵:如何用链脉名片开启电商新模式“新零售”
- ANTV X6 Model