templet

package templet;

public abstract class Tour
{
public abstract float fare();
public abstract float lunch();
public abstract float ticket();
public void result()
{
float sum = fare() + lunch() + ticket();
if(sum > 100)
{
System.out.println("超出公司申请经费:100元,需要自费:"+(sum-100)+"元");
}else {
System.out.println("此次旅游经费为:"+sum+"元, 剩下"+(100-sum)+"元返还给公司。");
}
}
}



package templet;

public class Spring extends Tour {

public Spring()
{
System.out.println("***************今年春季旅游安排:隐贤山庄******************");
}
public float fare()
{
System.out.println("车费25元");
return 25;
}

public float lunch()
{
System.out.println("中餐50元");
return 50;
}

public float ticket()
{
System.out.println("门票100元");
return 100;
}

}



package templet;

public class Test
{

public static void main(String[] args)
{
Tour tour = new Spring();
tour.result();
}

}
/*
*今天收到公司要去旅游的消息就想到了模板模式还没有写就写出来了
*模板模式主要是两大功能,一是抽象,二是多态
*模板就是把相同的与不同的分离出来 达到代码重复利用
*/

你可能感兴趣的:(templet)