A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 征服 中级黑马   /  2014-4-5 22:28  /  1393 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 征服 于 2014-4-6 10:48 编辑

我记得老师说在java中没有指针,怎么运行程序出错会报出空指针异常,这是怎么回事?还有指针到底该怎么使用,请高手指点,谢谢!

4 个回复

倒序浏览
Java里面说的指针吧,其实就是一个对象的引用,比如有一个类
class Demo{ void function(){...} }
然后你来一句 Demo d = new Demo();
这里等号右边的 new Demo() 是在堆中创建了一个对象,而左边的 d 就是一个指针变量,在栈中,里面放的是对象new Demo() 的首地址。你可以这么调用对象里面的函数 d.function();
当你让 d 指向空时, 也就是 d = null; 然后你在用 d 调用函数 functuin() 时,就会出现空指针异常的错误。
回复 使用道具 举报
所谓的指针,就是java中的对象的引用。比如String s;这个s就是指针。
2.所谓的空指针,就是指针的内容为空,比如上面的s,如果令它指向null,就是空指针。
3.所谓的空指针异常,就是一个指针是空指针,你还要去操作它,既然它指向的是空对象,它就不能使用这个对象的方法。比如上面的s假如为null,你还要用s的方法,比如s.equals( String x);那么就会产生空指针异常。
回复 使用道具 举报
java 空指针异常表示java引用指向的内存地址为空。java的引用和指针的基本性质是一样的,所以才这么叫吧
回复 使用道具 举报
谢谢大家!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马