亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? flightschedular.java

?? 航空定票系統(tǒng):戶端功能模塊:用戶登錄模塊
?? JAVA
字號(hào):
package com.tarena.abs.model;

import java.util.*;
import java.io.Serializable;
/**航班計(jì)劃類用來描述一個(gè)航班計(jì)劃,該類不包含具體的航班日期,
 * 只給一個(gè)周計(jì)劃表。
 */
public class FlightSchedular implements Serializable{
	private String number;//航班號(hào)
	private String fromAdd;//出發(fā)地
	private String toAdd;//目的地
	private MyDate startDate;
	private MyDate endDate;
	private MyTime fromTime;//起飛時(shí)間
	private MyTime toTime;//到達(dá)時(shí)間
	private int length;//總里程
	private PlaneModel plane;//執(zhí)行機(jī)型
	private int schedular;//周計(jì)劃表
	private int totalPrice;//全價(jià)
	private static final long serialVersionUID = 585764319801237L;
	/**
	 * 構(gòu)造方法,該構(gòu)造方法通過屬性來構(gòu)造航班計(jì)劃對(duì)象。
	 */
	public FlightSchedular( String number,String fromAdd, String toAdd,
			MyDate startDate,MyDate endDate,MyTime fromTime, MyTime toTime,
			int length, PlaneModel plane, int schedular,  int price) {
		this.number = number;
		this.fromAdd = fromAdd;
		this.toAdd = toAdd;
		this.startDate=startDate;
		this.endDate=endDate;
		this.fromTime = fromTime;
		this.toTime = toTime;
		this.length = length;
		this.setPlane(plane);
		this.schedular = schedular;
		totalPrice = price;

		
	}

	public PlaneModel getPlane() {
		return plane;
	}
	/**
	 * 該方法負(fù)責(zé)為航班計(jì)劃設(shè)置執(zhí)行的飛機(jī)機(jī)型,該方法檢查機(jī)型的最大航程
	 * 是否大于航班的里程。
	 * @return void
	 */
	public void setPlane(PlaneModel plane) {
		if(plane.getMaxLine()>this.length){
			this.plane =plane;
		}
		else{
			System.out.println("不能將此型號(hào)飛機(jī)設(shè)為本航班的執(zhí)行飛機(jī)!");
			System.out.println("飛機(jī)型號(hào):"+plane.getModel()+"  最大續(xù)飛里程:"+plane.getMaxLine());
			System.out.println("航班編號(hào):"+this.number+"  航班里程:"+this.length);
		}
	}
	

	public String getFromAdd() {
		return fromAdd;
	}
	public MyTime getFromTime() {
		return fromTime;
	}
	public int getLength() {
		return length;
	}
	public String getNumber() {
		return number;
	}

	public String getToAdd() {
		return toAdd;
	}
	public int getTotalPrice() {
		return totalPrice;
	}
	public MyTime getToTime() {
		return toTime;
	}
	public int getSchedular() {
		return schedular;
	}
	public void setSchedular(int schedular) {
		this.schedular = schedular;
	}
	
	public MyDate getEndDate() {
		return endDate;
	}

	public MyDate getStartDate() {
		return startDate;
	}

	/**
	 * 該方法用來判斷某天是否有航班。
	 * @param day WeekDay對(duì)象,用來代表一周的某一天。
	 * @return 如果周
	 */
	public boolean hasFlight(WeekDay day){
		int flag=0;
		flag=this.schedular & (1<<day.getDay()-1);
		return flag!=0;
	}
	public boolean hasFlight(int day){
		return (this.schedular & (1<<day-1))!=0;
	}
	public boolean hasFlight(MyDate date){
		return (this.schedular &(1<<date.get(Calendar.DAY_OF_WEEK)-1))!=0;
	}
	/**
	 * 該方法用來生成一個(gè)當(dāng)前航班計(jì)劃下的航班對(duì)象。通過兩個(gè)參數(shù)來確定
	 * 航班,日期(MyDate date)和折扣(double off)。
	 * @param date
	 * @param off
	 * @return 返回一個(gè)Flight對(duì)象或返回null
	 */
	public Flight createNewFlight(MyDate date,double off){
		if(hasFlight(date)){
			MyDate tmp=(MyDate)date.clone();
			return this.new Flight(tmp,off);
		}
		else{
			System.out.println("對(duì)不起,日期與航班計(jì)劃的班期不符");
			return null;
		}
	}
	/**
	 * 僅通過date來生成一個(gè)航班對(duì)象并返回。
	 * @param date
	 * @return
	 */
	public Flight createNewFlight(MyDate date){
		return createNewFlight(date,1.0);
	}
	/**
	 * 覆蓋的equals方法,認(rèn)為當(dāng)兩個(gè)航班計(jì)劃對(duì)象
	 * 的航班號(hào)相同的時(shí)候,這兩個(gè)對(duì)象就相同。
	 */
	public boolean equals(Object o){
		if(o instanceof FlightSchedular){
			FlightSchedular fs=(FlightSchedular)o;
			return fs.number.equalsIgnoreCase(this.number);
		}
		return false;
	}
	/**
	 * 覆蓋的hashCode方法,返回航班計(jì)劃對(duì)象的航班號(hào)的hashCode().
	 */
	public int hashCode(){
		return number.hashCode();
	}
	/**
	 * 返回該航班計(jì)劃下的某段時(shí)間內(nèi)的所有航班的集合。
	 * @param start
	 * @param end
	 * @return
	 */
	public HashSet<Flight> allFlightSet(MyDate start,MyDate end){
		HashSet<Flight> hs=new HashSet<Flight>();
		MyDate day;
		for(day=start;day.compareTo(end)<=0;day.add(Calendar.DAY_OF_MONTH,1)){
			if(hasFlight(day)){
				hs.add(this.createNewFlight(day));
			}
		}
		return hs;
	}
	public HashSet<Flight> allFlightSet(){
		return allFlightSet(this.startDate,this.endDate);
	}
	/**
	 * 返回該航班計(jì)劃下的某段時(shí)間的所有航班的集合,并按航班的日期來排序。
	 * @param start
	 * @param end
	 * @return
	 */
	public TreeSet<Flight> allFightSorted(MyDate start,MyDate end,Comparator<Flight> com){
		TreeSet<Flight> ts=new TreeSet<Flight>(com);
		ts.addAll(allFlightSet(start,end));
		return ts;
	}
	public TreeSet<Flight> allFightSorted(Comparator<Flight> com){
		TreeSet<Flight> ts=new TreeSet<Flight>(com);
		ts.addAll(allFlightSet());
		return ts;
	}
	/**
	 * Flight類是一個(gè)內(nèi)部類,用來描述一個(gè)確定日期的航班對(duì)象。
	 * @author tony.tang
	 *
	 */
	public class Flight implements Comparable{
		private FlightSchedular schedular;//航班所屬的航班計(jì)劃。
		private MyDate date;//航班的日期。
		private int remainSeat;//航班的剩余座位數(shù)
		private double priceOff;//航班的折扣
		/**
		 * 構(gòu)造方法,使用一個(gè)日期和一個(gè)折扣值來構(gòu)造一個(gè)航班對(duì)象。
		 * 該航班對(duì)象使用外部類的當(dāng)前對(duì)象作為其航班計(jì)劃屬性。
		 * @param date
		 * @param off
		 */
		private Flight(MyDate date,double off){
			this.date=date;
			this.priceOff=off;
			this.schedular=FlightSchedular.this;
			this.remainSeat=this.schedular.getPlane().getMaxSeat();
		}
		/**
		 * 實(shí)現(xiàn)的compareTo方法,用來比較兩個(gè)航班對(duì)象的大小,
		 * @param 
		 * @return
		 */
		public int compareTo(Object o){
			Flight f=(Flight)o;
			return this.date.compareTo(f.date);
		}
		/**
		 * 覆蓋的equals方法,當(dāng)兩個(gè)航班對(duì)象的航班計(jì)劃和日期都相同時(shí),它們相同。
		 */
		public boolean equals(Object o){
			if(o instanceof Flight){
				Flight f=(Flight)o;
				return (f.schedular.equals(this.schedular) && 
						f.date.equals(this.date));
			}
			return false;
		}
		/**
		 * 覆蓋的hashCode方法。
		 */
		public int hashCode(){
			return this.date.hashCode()^this.schedular.hashCode();
		}
		public String toString(){
			return this.schedular.number+":"+this.date;
		}
		public double getPriceOff() {
			return priceOff;
		}
		public void setPriceOff(double priceOff) {
			this.priceOff = priceOff;
		}
		public FlightSchedular getSchedular() {
			return schedular;
		}
		public Calendar getDate() {
			return date;
		}
		public int getRemainSeat() {
			return remainSeat;
		}
		public void setRemainSeat(int remainSeat) {
			this.remainSeat = remainSeat;
		}
	}//Flight類結(jié)束
}//FlightSchedular類結(jié)束。















?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩成人在线一区| 国产精品久久久久毛片软件| 中文字幕高清一区| 日韩av电影免费观看高清完整版 | 亚洲男女一区二区三区| 青青草精品视频| 在线一区二区三区| 国产日韩av一区| 久久国产精品第一页| 欧美性xxxxx极品少妇| 国产精品久久福利| 国产在线精品国自产拍免费| 91精品久久久久久久久99蜜臂| 综合色天天鬼久久鬼色| 国产成人免费高清| 精品少妇一区二区三区免费观看| 亚洲狠狠爱一区二区三区| 91色九色蝌蚪| 国产精品区一区二区三区| 国产剧情一区二区| 精品国产1区二区| 久久黄色级2电影| 欧美一区二区三区日韩| 午夜电影久久久| 欧美日韩日日夜夜| 亚洲影院在线观看| 在线观看av不卡| 一区二区三区中文字幕在线观看| 成人自拍视频在线观看| 国产欧美在线观看一区| 国产美女精品在线| 精品成人一区二区三区四区| 蜜桃av一区二区在线观看| 欧美一区二区三级| 免费的国产精品| 欧美videos大乳护士334| 日韩高清电影一区| 4438成人网| 亚洲123区在线观看| 欧美精品成人一区二区三区四区| 亚洲永久精品大片| 欧美精品成人一区二区三区四区| 丝瓜av网站精品一区二区| 欧美电影一区二区| 美女视频黄a大片欧美| 日韩免费福利电影在线观看| 精品一区二区三区免费播放| 精品国产不卡一区二区三区| 国产精品一品视频| 中文字幕不卡在线播放| 91在线无精精品入口| 亚洲激情在线激情| 欧美日韩亚州综合| 毛片av一区二区| 精品国产99国产精品| 国产大片一区二区| 国产精品成人免费| 欧美性视频一区二区三区| 天堂va蜜桃一区二区三区 | 99视频热这里只有精品免费| 亚洲日本丝袜连裤袜办公室| 在线亚洲人成电影网站色www| 亚洲一级片在线观看| 亚洲图片有声小说| 日韩视频在线永久播放| 国产一区二区电影| 中文字幕一区日韩精品欧美| 99久久亚洲一区二区三区青草| 亚洲欧美日韩电影| 91精品久久久久久蜜臀| 国产一区二区三区在线观看免费| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 在线中文字幕不卡| 偷拍一区二区三区| 精品国产sm最大网站| 成人精品鲁一区一区二区| 亚洲综合在线电影| 欧美不卡一区二区三区四区| 成人午夜在线播放| 亚洲国产精品久久人人爱蜜臀| 日韩午夜激情av| 成人一区二区三区| 亚洲国产精品一区二区尤物区| 日韩精品一区二区三区蜜臀| 成人免费电影视频| 午夜精品一区二区三区三上悠亚| 欧美大片在线观看一区二区| 不卡区在线中文字幕| 五月天亚洲婷婷| 久久久蜜臀国产一区二区| 在线观看日韩电影| 国精产品一区一区三区mba视频 | 亚洲一二三四区不卡| 亚洲精品一区二区在线观看| 色婷婷激情综合| 激情国产一区二区| 亚洲黄色尤物视频| 久久久影院官网| 欧美日韩黄色影视| 国产成都精品91一区二区三| 亚洲成a人片在线观看中文| 国产日韩精品一区二区三区在线| 在线观看91精品国产入口| 国产一区二三区好的| 一区二区三区久久久| 久久麻豆一区二区| 欧美美女视频在线观看| 9色porny自拍视频一区二区| 蜜桃av一区二区| 一区二区三区美女| 国产亚洲欧美色| 91精品国产91久久久久久最新毛片| 不卡视频一二三四| 国产在线麻豆精品观看| 亚洲18女电影在线观看| 中文字幕一区二区不卡| 26uuu色噜噜精品一区| 欧美天堂一区二区三区| 成人av资源在线| 国内成人精品2018免费看| 五月天久久比比资源色| 亚洲人成精品久久久久| 国产农村妇女毛片精品久久麻豆| 日韩欧美一级精品久久| 欧美私人免费视频| 色呦呦国产精品| 国产福利一区二区| 久久成人免费网站| 日韩高清不卡一区二区三区| 亚洲一区日韩精品中文字幕| 国产精品大尺度| 亚洲精品一区二区精华| 日韩一区二区三区在线观看| 欧洲av在线精品| 日本精品免费观看高清观看| 丁香五精品蜜臀久久久久99网站| 韩国av一区二区三区| 麻豆视频观看网址久久| 午夜av一区二区三区| 亚洲一二三区视频在线观看| 亚洲免费成人av| 亚洲色图一区二区三区| 亚洲欧美怡红院| 亚洲少妇中出一区| 一色屋精品亚洲香蕉网站| 国产精品久久久久aaaa| 日本一区二区动态图| 欧美激情一区三区| 国产日产欧美一区二区三区| 精品国精品国产| 欧美成人video| 精品99久久久久久| 精品国产一二三| 久久久蜜臀国产一区二区| 久久噜噜亚洲综合| 欧美国产综合一区二区| 国产精品视频看| 国产精品久久久久久久久免费丝袜| 国产欧美日韩精品在线| 国产精品毛片久久久久久久| **性色生活片久久毛片| 欧美激情综合五月色丁香| 中文字幕av一区二区三区高 | 欧美一区二区视频在线观看2020 | 4438x亚洲最大成人网| 精品一区免费av| 久久久青草青青国产亚洲免观| 玖玖九九国产精品| 一区二区三区日本| 欧美日韩小视频| 日本不卡视频在线观看| 欧美大片一区二区| 在线电影一区二区三区| 免费欧美在线视频| 久久99精品国产| 国产成人99久久亚洲综合精品| 成人亚洲一区二区一| 91麻豆6部合集magnet| 欧美三级资源在线| 91精品国产91久久久久久一区二区 | 亚洲午夜激情av| 全部av―极品视觉盛宴亚洲| 精品在线免费观看| 成人免费va视频| 色播五月激情综合网| 67194成人在线观看| 久久久一区二区三区捆绑**| 国产精品网友自拍| 洋洋成人永久网站入口| 日本特黄久久久高潮| 国产精品性做久久久久久| 99久久精品情趣| 欧美日韩在线一区二区| 精品福利在线导航| 一区在线观看免费| 午夜久久久久久| 国产一区二区免费在线| 91免费观看视频在线| 4438x亚洲最大成人网| 国产亚洲va综合人人澡精品 |