一个nullpointExcetion引发的注意
来源:互联网 发布:retrofit2 json 编辑:程序博客网 时间:2024/06/05 19:11
package com.rc.portal.dao;public class Test { Test1 t=new Test1(); String t1; String t2; // 内部类 public class Test1{ String t2=t1.toString();} public static void main(String[] args) { new Test(); }}
Exception in thread "main" java.lang.NullPointerExceptionat com.rc.portal.dao.Test$Test1.<init>(Test.java:12)at com.rc.portal.dao.Test.<init>(Test.java:6)at com.rc.portal.dao.Test.main(Test.java:15)
原因:
在new Test()的时候首先去为t 赋值也就是去为Test1的t2赋值而此时t1为null
创建一个对象步骤
先实例化后初始化 在未初始化的时候引用类型默认为null 实例化开辟空间并从上到下执行属性赋值语句如果属性有默认值则值为默认值如果没有 引用类型会默认为null 值类型 int为0 boolean为false
该异常是因为在实例化Test的时候为t赋值的时候去使用了并为赋值的t1 所以引发空指针
注意:
在创建一个对象的时候初始化(用构造方法创建对象)
在使用一个对象的时候首先判断是否为null
- 一个nullpointExcetion引发的注意
- 一个 * 引发的血案
- 一个 ~ 引发的悲剧
- 一个BUG引发的...
- 一个“-”引发的血案
- 一个"/"引发的血案
- 一个馒头引发的麻烦
- 一个“笑话”引发的思考
- 一个!号引发的灾难!!!!!!!
- 一个松果引发的血案
- 一个细节引发的思考
- 一个苹果引发的思考
- 一个memset引发的血案
- 一个桌子引发的口水
- 一个问题引发的思考
- 一个分号引发的错误
- 一个小数点引发的灾难
- 一个包子引发的血案?
- 【rmzt】清纯&&王范儿xp主题
- 删除所有的.svn文件夹
- 数据库动态管理视图DMV(2)
- java中int和string的相互转换
- 两种设为首页的JS代码
- 一个nullpointExcetion引发的注意
- Dijkstra算法解决URAL1072
- KiFastCallEntry自己理解
- ios开发UIImage imageNamed方法
- 使用SharedPreferences保存对象(图片)类型的数据
- Ogre 3D开发环境配置中遇到的问题(2)
- MYSQL外键(Foreign Key)的使用
- #if DEBU介绍
- Sizeof与Strlen的区别与联系