|NO.Z.00029|——————————|BigDataEnd|——|Java&方法封装.V11|——|Java.v11|引用变量|注意事项|

一、引用变量的注意事项
### --- 引用变量的注意事项

~~~     ——>        引用类型变量用于存放对象的地址,可以给引用类型赋值为null,表示不指向任何对象。
~~~     ——>        当某个引用类型变量为null时无法对对象实施访问(因为它没有指向任何对象)。
~~~     ——>        此时,如果通过引用访问成员变量或调用方法,会产生NullPointerException异常。
二、编程代码
### --- 编程代码

/*
    编程实现Boy类的定义
 */
public class Boy {
    
    String name; // 用于描述姓名的成员变量
    
    // 自定义构造方法
    Boy() {
        // 调用本类中的有参构造方法
        //this("无名");
        System.out.println("无参构造方法!");
    }
    Boy(String name) {
        // 调用本类中的无参构造方法
        this();
        System.out.println("=========有参构造方法!");
        this.name = name;
    }
    // 自定义成员方法实现特征的打印
    void show() {
        System.out.println("我的名字是:" + name);
    }
    
    public static void main(String[] args) {
        
        // 1.使用无参方式构造对象并打印特征
        Boy b1 = new Boy();
        b1.show(); // null
        
        System.out.println("-----------------------------------");
        // 2.使用有参方式构造对象并打印特征
        Boy b2 = new Boy("张飞");
        b2.show(); // 张飞
        
        System.out.println("-----------------------------------");
        // 3.引用变量的数值可以为空
        //Boy b3 = null;
        //b3.show(); // 编译ok,运行会发生NullPointerException空指针异常   算术异常、数组下标越界异常
        Boy b3 = b2;
        b3.show(); // 张飞
    }
}
三、编译打印
### --- 编译

C:\Users\Administrator\Desktop>javac Boy.java
### --- 打印输出

C:\Users\Administrator\Desktop>java Boy
无参构造方法!
我的名字是:null
-----------------------------------
无参构造方法!
=========有参构造方法!
我的名字是:张飞
-----------------------------------
我的名字是:张飞

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on 2022-04-03 17:38  yanqi_vip  阅读(13)  评论(0)    收藏  举报

导航