前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java基础-day09-基础题-对象;类;封装

Java基础-day09-基础题-对象;类;封装

作者头像
Java帮帮
发布2018-03-19 17:33:59
6210
发布2018-03-19 17:33:59
举报

Java基础-day09-基础题-对象&类&封装

1.定义手机类并测试

代码实现:

代码语言:javascript
复制
package StudentJavaSEday09;
//定义手机类
public class Phone {
 //品牌
 String brand;
 //价格
 int price;
 //颜色
 String color;
 //打电话
 public void call(String name) {
 System.out.println("给"+name+"打电话");
 }
 //发短信
 public void sendMessage() {
 System.out.println("群发短信");
 }
}
package StudentJavaSEday09;
public class TestPhone {
 public static void main(String[] args) {
 // 创建对象
 Phone p = new Phone();
// 输出成员变量值
 System.out.println("品牌:" + p.brand);// null
 System.out.println("价格:" + p.price);// 0
 System.out.println("颜色:" + p.color);// null
 System.out.println("------------");
 // 给成员变量赋值
 p.brand = "锤子";
 p.price = 2999;
 p.color = "棕色";
 // 再次输出成员变量值
 System.out.println("品牌:" + p.brand);// 锤子
 System.out.println("价格:" + p.price);// 2999
 System.out.println("颜色:" + p.color);// 棕色
 System.out.println("------------");
 // 调用成员方法
 p.call("唐嫣");
 p.sendMessage();
 }
}

运行结果:

2.一个对象的内存图

定义一个手机类:

代码实现:

代码语言:javascript
复制
package StudentJavaSEday09;
public class Phone2 {
 public static void main(String[] args) {
 Phone p = new Phone();
 System.out.println(p.brand + "---" + p.price + "---" + p.color);
 p.brand = "锤子";
 p.price = 2999;
 p.color = "棕色";
 System.out.println(p.brand + "---" + p.price + "---" + p.color);
 p.call("林青霞");
 p.sendMessage();
 }
}

运行结果:

内存图解:

3.两个对象,引用同一个方法内存图

代码语言:javascript
复制
代码实现:
package StudentJavaSEday09;
public class Phone3 {
 public static void main(String[] args) {
 Phone p1 = new Phone();
 p1.brand = "小米5s";
 p1.price = 1999;
 p1.color = "银色";
 System.out.println(p1.brand + "---" + p1.price + "---" + p1.color);
 p1.call("林青霞");
 p1.sendMessage();
 Phone p2 = new Phone();
 p2.brand = "IPhone7S";
 p2.price = 7999;
 p2.color = "土豪金";
 System.out.println(p2.brand + "---" + p2.price + "---" + p2.color);
 p2.call("张曼玉");
 p2.sendMessage();
 }
}

运行结果:

内存图解:

4.两个引用,指向同一个对象

代码实现:

代码语言:javascript
复制
package StudentJavaSEday09;
public class Phone4 {
 public static void main(String[] args) {
 Phone p1 = new Phone();
 p1.brand = "OPPO";
 p1.price = 2999;
 p1.color = "白色";
 System.out.println(p1.brand + "---" + p1.price + "---" + p1.color);
 Phone p2 = p1;
 p2.brand = "魅族";
 p2.price = 1999;
 p2.color = "蓝色";
 System.out.println(p1.brand + "---" + p1.price + "---" + p1.color);
 System.out.println(p2.brand + "---" + p2.price + "---" + p2.color);
 }
}

运行结果:

内存图解:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-06-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java帮帮 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
短信
腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档