文档章节

不可变类

非著名程序员Bla
 非著名程序员Bla
发布于 2016/05/18 18:04
字数 143
阅读 1
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

public class Name {
private String firstName;
private String lastName;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public Name(){}
public Name(String firstName,String lastName)
{
this.firstName=firstName;
this.lastName=lastName;
}
}

public class Person {
private final Name name;
public Person(Name name)
{
//this.name=name;
this.name=new Name(name.getFirstName(), name.getLastName());//1
}
public Name getName()
{
//return name;
return new Name(name.getFirstName(), name.getLastName());//2
}
public static void main(String[] args) {
    Name name=new Name("悟空","孙");
    Person per=new Person(name);
    System.out.println(per.getName().getFirstName());
    System.out.println(per.getName().getLastName());
    name.setLastName("八戒");
    //孙 被改成 八戒 ,我们不想让它被改,怎么办? 到相应的构造器和方法中去改,见1和2
    System.out.println(per.getName().getLastName());
}
}

本文转载自:http://blog.csdn.net/yangrunkangbla/article/details/45134277

非著名程序员Bla
粉丝 15
博文 75
码字总数 0
作品 0
合肥
后端工程师
私信 提问
加载中
请先登录后再评论。

暂无文章

如何在交互式环境中执行Python程序

如何在交互式环境中执行Python程序 相信接触过Python的小伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行、命令行窗口运行、开发工具上运行等,其中在不同的...

osc_auwur47t
3分钟前
7
0
5G前传—25G DWDM SFP28光模块

在5G网络部署中,直连场景一般采用25G光模块,支持单纤和双纤双向这两种类型。而有源WDM应用场景采用的是25G彩色光模块,通常为25G CWDM和25G DWDM光模块。接下来,易天光通信ETU-LINK将在本...

osc_lmp76vjx
4分钟前
4
0
华为交换机不同VLAN间通信的两种主流解决方案,一分钟快速掌握

VLAN 隔离广播的同时,也禁止了不同VLAN 之间的用户通信,VLAN 间的通信成为新的焦点,VLAN 路由( 三层路由功能) 成功地解决了VLAN 间的通信。 一、三层交换机VLAN路由功能解决不同VLAN间通信...

osc_i5jwwgir
6分钟前
7
0
阿里云新品发布会周刊第56期 丨 如何用云服务占据全球化先机,让产品服务触达全球用户?

点击订阅新品发布会! 新产品、新版本、新技术、新功能、价格调整,评论在下方,下期更新!关注更多内容,了解更多 新品发布会专属福利 1、 全球加速GA产品免费试用:加速任意跨地域公网服务...

osc_c05lkk3u
7分钟前
11
0
架构师应该具备哪些思维模型?

架构师一直是程序员「羡慕且追求」的高度,今天来说说我(奈学教育CEO:孙玄)眼里优秀的架构师该如何定义。毕竟我也曾经是一名架构师: 在开始今天的话题之前我说一个和我前公司P9现在已经是...

osc_lbt7zo1x
8分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部