公司面试笔试

        我的以前同事现在去面试了一家软件公司,以下是他的笔试题,他要知道我的解答,我只会解答前两道,最后一题我没弄明白,大伙也来帮他解答解答。

1. 第1题:
2. 有如下业务流程:用户网上下订单──〉业务部打电话和用户确认──〉用户确认或修改订单──〉订单完成
3. 订单内容包括,用户信息(用户名,联系电话),产品信息(机票,酒店,套票,优惠券),产品可以是多种,每种可以有多个。
4. 机票的价格与航班号,日期相关。
5. 酒店的价格与酒店,房间类型,日期相关
优惠券价格与优惠券类型以及酒店相关,在购买酒店的时候作为附属产品销售。一旦购买了酒店产品,优惠券可以买任意多张,但是不能单卖。例如,购买了中国大酒店。中国大酒店的早餐优惠券就可以买任意多张,否则不能买。
套票是由机票+酒店组成,一个组合可能是酒店和来回程机票,也可能是酒店和去程机票组成。
请设计该订单的解决方案。包括数据库表的设计,数据对象的设计。

答案:
我的第一题解答(订单的解决方案):
以下是数据库表设计,用的是中文,如果可以的话你将它翻译成英文。

数据对象的设计就将是将他们生成POJO即可,要是能用到Hibernate更好,因为mapping档可体现各表之间的关系。

订单与产品多对多
酒店与优惠券一对一
产品与优惠券一对多(多:0或>1 [2...*] )

订单
-----------------------------
订单ID、用户ID、订单_产品ID

订单_产品
------------------------------
订单ID、产品ID

用户
-------------------------------
用户ID、用户名、电话

产品
--------------------------------
产品ID、机票ID、酒店ID、套票ID、优惠券ID

机票
---------------------------------
机票ID、航班号、订票日期、价格


酒店
----------------------------------
酒店ID、星级、房间类型、订房日期、优惠券ID

优惠券
-----------------------------------
优惠券ID、类型、星级、价格

套票
------------------------------------
套票ID、机票ID、酒店ID

第2题:
在面向对象的观点里,一台电脑硬件上可以由主机,显示器和附属配件组成。主机又可以由机箱,主板,附属卡等等组成。显示器由显示屏,电子发射器等组成。请按照面向对象的观念尽可能详细的列出一辆自行车由什么部分组成,并描述当刹车的时候,各个部件是如何配合工作的。

这是第二道题的解决方案(一辆自行车的解决方案),为了节省时间我都是用中文描述的,可以的话也要你转换成英文,且类型也要你加上。

class 自行车{
  车轮;
  车身;
   刹车(boolean 刹车){
          车身.刹车部件.改变状态(刹车);
          车轮.改变状态(刹车);
   }
}

class 车身{
    刹车部件; 
}

class 刹车部件{
   状态;
  改变状态(boolean 刹车){
      状态 = 刹车;
  }
}

class 车轮{
   状态;
   改变状态(boolean 停止){
      状态 = 停止;
  }
}


第3题:
100台割草机割一块地需要200天,200台割草机割同一块地需要n天, 已知n < 100, 如果要设计一个系统,当输入n时,显示该草坪种的是什么草。您有什么解决方案。
???????????????????????????????

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值