为什么作为成员变量的类对象,不用初始化也不报错,而作为非成员变量的类对象,不初始化就会报错?

原创 2016年08月29日 11:50:44

例如:
我在类Test中定义了一个成员变量test3test3UserDAO的对象。

 

其中有个go()方法,里面定义了一个类UserDAO类的对象test2,在访问UserDAO类的findById方法时就会报错。而作为成员变量的UserDAO类的对象test3,在访问UserDAO类的findById方法时就正常。

 

 

 

原因是,类的成员变量在类加载的时候自动初始化,而在方法内部时就要你去初始化了。(参考链接http://bbs.csdn.net/topics/350243222

就相当于,在类加载的时候,会自动的执行UserDAO test3=null;

所以如下书写test2就不会报错,即给test2初始化为null


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

访问C++类对象中私有成员变量的方法

原则上,C++类中私有变量不允许在类之外的其他任何地方访问,一般来说功能完善的类都会提供get,set方法来操作类属性值,但如果没有get、set方法都没有提供,比如使用的是第三方提供的.o(或者动态...
  • wwb0111
  • wwb0111
  • 2012年05月26日 15:29
  • 535

Gson序列化与反序列化成员变量为Map<String,Object>的类对象

开发时遇到的问题,找到解决方案后记录下编写反序列化Adapterimport com.google.gson.*; import com.google.gson.JsonDeserializer; ...

Java成员变量是自身、本类对象

如题,假如java类里的成员变量是自身的对象,则新建该类对象时内存中怎么分配空间,我感觉似乎死循环了。 不过我想的肯定是错的,因为很多类的成员变量是自身对象,并且绝对无错,举个例子: Clas...

C++ 虚指针、成员变量与类对象的偏移地址

本文根据对象中虚指针、成员变量、成员函数在类对象中的相对位置,分析并给出虚指针、成员变量在类对象的偏移地址分布情况及相关源码。...

java反射,获取类对象所有成员变量,从字符串调用函数

java反射,获取类对象所有成员变量,从字符串调用函数

C++类对象成员变量和成员函数内存分配的问题

(转载自:http://blog.sina.com.cn/s/blog_4feac7b90101keet.html) 很多人都知道C++类是由结构体发展得来的,所以他们的成员变量(C语言的结构体只有...

C++类对象成员变量与成员函数内存分配问题

http://blog.sina.com.cn/s/blog_4feac7b90101keet.html C++类对象成员变量与成员函数内存分配问题  (201...

【Objective-C】04-OC对象成员变量的封装规范:get方法和set方法

面向对象的三大特性:封装、继承和多态。其中,成员变量的封装非常常用。OC在这点上和C#本质上是一样的,都是用方法对字段进行封装。成员变量封装成属性的优点显而易见,都是不允许外界直接访问成员变量,而只能...
  • HONG321
  • HONG321
  • 2014年12月06日 13:53
  • 845

指向对象成员变量的指针

指向对象成员变量的指针

Objective-C—方法与成员变量、匿名对象

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- ---方法与成员变量 /*  人  类名:Person  属性:(成员变量\实例变量):...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:为什么作为成员变量的类对象,不用初始化也不报错,而作为非成员变量的类对象,不初始化就会报错?
举报原因:
原因补充:

(最多只允许输入30个字)