引用数据类型实例

关于人和孩子与车

class Member{
	private int mid;
	private String name;
	private Member child;//表示孩子
	private Car car;	//表示属于人的车
	//car有实例化对象表示有车 
	//car为null表示没有车
	public Member(int mid,String name) {
		this.mid=mid;
		this.name=name; 
	}
	public String getInf0() {
		return "人员编号:"+this.mid+",姓名:"+this.name;
	}
	public void setCar(Car car) {
		this.car=car;
	}
	public Car getCar() {
		return this.car;
	}
		//设置孩子名字
		public void setChild(Member child) {
			this.child=child;
		}
		//得到孩子名字
		public  Member getChild() {
			return this.child;
		}
}
		//step1:根据定义的机构设置数据
		//step2:根据定义的结构取出数据
class Car{
	private String pname;
	private Member member;//车属于一个人
	public Car(String pname) {
		this.pname=pname;
	}
	//得到车的名字
	public String getInfo() {
		return "车的名字:"+this.pname;
	}
	//设置人的名字
	public void setMember(Member member) {
		this.member=member;
	}
	//得到人的名字
	public Member  getMember(){
		return  this.member;
	}
	
}
public class Test {   

public static void main(String[] args) {
	//第一步:设置数据
	Member m=new Member(1,"卢本伟");//独立对象
	Member chd=new Member(2,"马飞");//一个孩子
	Car cc=new Car("二手UU公交车");//一辆车
	Car c=new Car("UU公交车");//独立对象
	m.setCar(c);//一个人有一辆车
	c.setMember(m);//一辆车属于一个人
	chd.setCar(cc);//一个孩子有一辆车
	cc.setMember(chd);//一辆车属于一个孩子
	m.setChild(chd);//一个人有一个孩子
	// 第二步:取出关系
	//通过人找到车的信息
      System.out.println(m.getCar().getInfo());
	//通过车找到人的信息
	System.out.println(c.getMember().getInf0());
	//通过人找到他孩子的信息
	System.out.println(m.getChild().getInf0());	
	//通过人找到他孩子的信息再通过孩子找到车的信息
	System.out.println(m.getChild().getCar().getInfo());
	//m.getChild().getCar().getInfo()为代码链

  }
}

{

class 键盘{}

class 鼠标{}
class CPU{}
class 硬盘{}
class 内存{}
class 显示器{}
class 主板{}
class 主机{


             private CPU[] 对象;
             private 硬盘[]  对象;
             private 内存[] 对象;
             private 主板  对象;  
         

class 电脑{


      private 主机 对象;
      private  显示器 对象;
      private  键盘  对象;
      private  鼠标  对象;




这样的设计思路在Java中就被称为合成设计模式。

猜你喜欢

转载自blog.csdn.net/syoung_7/article/details/80330541
今日推荐