用引用(reference)操纵对象-读Thinking in java

来源:互联网 发布:php注册登录代码 编辑:程序博客网 时间:2024/05/17 23:38

在C和C++当中,一般情况下通过指针来对对象进行引用,那在java当中是如何引用或者是使用对象的呢。Java当中一切都被视为对象,所以在Java当中对对象的引用相对来说比较简单,我们会通过引用(reference)来进行引用对象,例如有一台电视机,我们可以通过一个遥控器来进行控制电视机,那遥控器就相当于电视机的一个引用,遥控器只有在进行控制的时候才会有用,只要拥有这个遥控器,就可以针对电视机进行控制,例如转频道,控制大小音量等等,在这里,遥控器就可以理解为针对电视机这个对象的一个引用。你使用遥控器来操作电视,你实际上是操作的是遥控器(引用),然后再通过遥控器去调控电视机(对象)。

当你使用IDE(博主使用的是eclipse)在Java类中创建一个引用并使用该引用但是没有进行初始化的时候,如果没有使用该引用,则不会报错

例如:

package thinkinginjava.exercise.chapter.one;public class ObjectIsReference {public static void main(String[] args) {String s;//如果直接这样调用,IDE会给你提示错误The local variable s may not have been initializedSystem.out.println("S is :"+s);}}

IDE会给你报以下错误:

The local variable s may not have been initialized

提示你需要针对s进行初始化,所以一般情况下,我们会在创建引用的时候去对其初始化,去创建其引用的对象,通过 new关键字,会将以上代码修改为:

package thinkinginjava.exercise.chapter.one;public class ObjectIsReference {public static void main(String[] args) {String s;//如果直接这样调用,IDE会给你提示错误The local variable s may not have been initializeds = new String("Hello world!");System.out.println("S is :"+s);}}

但是如果作为一个类的域,Java默认会将其进行初始化,例如以下例子:

package thinkinginjava.exercise.chapter.one;public class JavaInitial {private int i;private char c;private String s;public static void main(String[] args) {JavaInitial ji = new JavaInitial();System.out.println(ji.i);System.out.println(ji.c);System.out.println(ji.s);}}

输出结果为:

0

[]

null


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 断奶后宝宝抗拒奶瓶怎么办 两岁宝宝断奶后不喝奶粉怎么办 两岁宝宝断奶不吃奶粉怎么办 宝宝断奶妈妈涨奶怎么办 三岁宝宝智商低怎么办 宝宝断奶晚上哭的厉害怎么办 2岁宝宝半夜喝奶粉怎么办 两岁宝宝不爱吃饭怎么办 快两岁的宝宝不爱吃饭怎么办 宝宝断奶后不愿意喝奶粉怎么办 宝宝断奶了不愿意喝奶怎么办? 宝宝断奶不愿意喝奶粉怎么办 宝宝断奶不愿意喝牛奶怎么办? 四个月宝宝断奶不吃奶粉怎么办 2岁不开口说话怎么办 八个月宝宝断奶不吃奶粉怎么办 宝宝断奶不喝奶粉怎么办 周岁 给娘家东西婆家看见怎么办 自己娘家妈总说婆家人坏话怎么办 娘家婆家老公都没有依靠怎么办? 2岁宝宝断奶粉怎么办 2岁宝宝夜奶频繁怎么办 宝宝15个月还在吃夜奶怎么办 宝宝两岁四个月还吃母乳怎么办 宝宝睡前老是找奶吃怎么办 宝宝戒奶晚上哭怎么办 宝宝戒奶半夜哭怎么办 吸习惯母乳不吸奶嘴怎么办 八个月宝宝奶睡怎么办 宝宝要吸着奶睡怎么办 戒母乳胸胀的疼怎么办 断奶孩子晚上哭的厉害怎么办 喜欢咬指甲的人怎么办? 成年了还咬指甲怎么办 戒奶乳房有硬块怎么办 戒奶七天有硬块怎么办 两岁宝宝喘气粗怎么办 两岁宝宝断不了奶怎么办 两岁宝宝不愿意喝奶粉怎么办 吃母乳不愿意吃奶粉怎么办 母乳宝宝不愿意喝奶粉怎么办