两个对象使用同一个方法的内存图和两个引用指向同一个对象的内存图


两个对象使用同一个方法的内存图

    public static void main(String[] args) {
        //根据Phone类创创建一个名为p的对象
        //格式:类名称 对象名 = new 类名称();
        Phone p = new Phone();
        System.out.println(p.brand);//null
        System.out.println(p.price);//0.0
        System.out.println(p.color);//null
        System.out.println("==========");
        p.brand="华为";
        p.price=9999.0;
        p.color="黑色";
        //华为
        System.out.println(p.brand);
        //9999.0
        System.out.println(p.price);
        //黑色
        System.out.println(p.color);
        System.out.println("============");
        p.call("小明");
        p.sendMe();
        System.out.println("=========");
        Phone p1 = new Phone();
        System.out.println(p1.brand);//null
        System.out.println(p1.price);//0.0
        System.out.println(p1.color);//null
        System.out.println("==========");
        p1.brand="三星";
        p1.price=5999.0;
        p1.color="蓝色";
        System.out.println(p1.brand);//华为
        System.out.println(p1.price);//9999.0
        System.out.println(p1.color);//黑色
        System.out.println("============");
        p1.call("张三");
        p1.sendMe();
    }

和第一种一样你是你我是我从新调用了一遍

两个对象使用同一个方法的内存图和两个引用指向同一个对象的内存图

 

 

两个引用指向同一个对象的内存图

        //根据Phone类创创建一个名为p的对象
        //格式:类名称 对象名 = new 类名称();
        Phone p = new Phone();
        System.out.println(p.brand);//null
        System.out.println(p.price);//0.0
        System.out.println(p.color);//null
        System.out.println("==========");
        p.brand="华为";
        p.price=9999.0;
        p.color="黑色";
        System.out.println(p.brand);//华为
        System.out.println(p.price);//9999.0
        System.out.println(p.color);//黑色
        System.out.println("============");
        p.call("小明");
        p.sendMe();
        System.out.println("=========");
        //将p中的地址值赋值给two
        Phone p1 = p;
        System.out.println(p1.brand);//华为
        System.out.println(p1.price);//9999.0
        System.out.println(p1.color);//黑色
        System.out.println("==========");
        p1.brand="三星";
        p1.price=5999.0;
        p1.color="蓝色";
        System.out.println(p1.brand);//三星
        System.out.println(p1.price);//5999.0
        System.out.println(p1.color);//蓝色
        System.out.println("============");
        p1.call("张三");
        p1.sendMe();

两个对象使用同一个方法的内存图和两个引用指向同一个对象的内存图

 

 

 

 

 

 

 

 

 

 

 

 

 

搜索

复制

原创文章,作者:sunnyman218,如若转载,请注明出处:https://blog.ytso.com/270726.html

(0)
上一篇 2022年6月29日
下一篇 2022年6月29日

相关推荐

发表回复

登录后才能评论