1.账户类(满分50分)版本1:满分10分设计Account1类,包含:■一个名为id的int类型的私有数据域(默认值为0),长度为6位。
■一个名为balance的double类型的私有数据域(默认值为0)。
■一个名为annualInterestRate的double类型的私有数据域存储当前利率(默认值为0)。
假设所有的账户都有相同的利率。
■一个名为dateCreated的Date类型的私有数据域存储账户的开户日期。
■一个能创建默认账户的无参构造方法。
■一个能创建带特定id和初始余额的构造方法,初始余额不能为负数。
■id、balance和annualInterestRate的访问器和修改器。
■dateCreated的访问器。
■一个名为getMonthlyInterestRate的方法返回月利率。
■一个名为withDraw的方法从账户提取特定金额。
■一个名为deposit的方法向账户存人特定金额。
■double类型的数据域保留2位小数。
■成员方法和数据域应进行基本的合理性检查。
设计测试类ATMMachine1:■创建一个有100个账户的数组,其id为0,1,2,...99,并初始化收支为1000美元。
■主菜单如下(可参考教材中文版P296或英文版P367):Mainmenu1:checkbalance2:withdraw3:deposit4:exit版本2:满分20分扩展Account1类为Account2类:■Account2类继承Account1类。
■为Account2类新增一个名为password的String类型的私有数据域存储账号密码。
password只能为字母或数字,长度不能小于6且不能大于10。
密码显示时为*******。
■为Account2类新增一个名为name的String类型的私有数据域存储客户名字。
■为Account2类新增一个名为transactions的ArrayList类型的新数据域,其为客户存储买卖记录。
这要求新建一个名为Transaction的类,类的定义请参照教材中文版P327或英文版P404。
每笔买卖都是Transaction类的一个实例。
■新增一个带初始余额的构造方法,其id随机产生,但不能与当前系统的id重复。
若初始余额的参数为负数,则抛出一个自定义异常并在当前构造方法中进行处理。
■重写方法withDraw,要求支取的金额为100的整数倍,并且当日支取金额不能超过5000,支取金额不允许透支。
每进行一次操作应向transactions数组线性表添加一笔买卖。
■重写方法deposit,要求每进行一次操作应向transactions数组线性表添加一笔买卖。
■新增一个方法changePassword,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码设计测试类ATMMachine2,其主菜单如下(可参考教材中文版P296或英文版P367):Mainmenu0:createaaccount1:checkbalance2:withdraw3:deposit4:detailsofthetransaction5:changepassword6:exit■若用户选择新建一个账号,则应提示用户输入账号password、balance和annualInterestRate,其中id随机产生。
新产生的账户应序列化到名为accounts.dat的文件中。
所有账户只能通过这种方式产生。
■所有用户操作结果应同步到accounts.dat文件中相应账户中。
■所有用户操作应有友好、简介的提示语。
版本3:满分20分请参照银行的ATM机界面,在Account2类的基础上开发一个GUI界面的ATM系统。
要求界面应模拟小键盘,并且账户信息读、写于文件accounts.dat。
2018/6/25 8:47:38 133KB 账户类 ATM
1
软通面试答案,里面有我去软通面试的题目和答案供有需要协助的朋友提供协助14.关于ArrayList答案:orderednosorttrd并且是按照index排15-如何从ArrayList里取对象?用get(intindex)这个方法。
2021/9/25 9:17:49 18KB 软通面试答案
1
仿淘宝源码.zip仿淘宝,AndroidStudio开发,gradle环境为2.2.3,最新,仿照淘宝APP,实现淘宝的基本功能:1:图片的查看,不仅需要左右滑动还需要能放大缩小,该功能在宝贝详情中体现2:Fragment与Activity之间的信息传递,该功能在购物车点击去逛逛跳转到首页中体现3:Arraylist中数据的多项删除,使用倒序删除法,该功能在购物车删除功能体现4:在购物车中出现的CheckBox选择后串行问题,使用ScrollView嵌套ListView方法处理,该功能在购物车中体现5、扫码、获取默认的NFC控制器和xListView下拉刷新加载更多
2021/9/12 3:08:31 41.51MB 仿淘宝源码
1
#OOP(机试)本程序总结文章:http://blog.qiji.tech/?p=10344---##程序基本要求一、项目名称:AirInfomationProgramming基于控制台的航班信息程序,简称AIP二、具体要求如下:(1)显示航班信息程序主菜单,如图-1所示,包括:*1)列出所有航班*2)按起飞时间查询*3)按目的地查询*4)删除航班*5)更新航班*6)退出系统(2)列出所有航班:查出所有航班的信息,以列表方式显示,包括:编号,航班号,目的地,起飞日期。
(3)按起飞时间查询:输入起飞时间(格式如2011-2-25),查出所有这一天的航班。
(4)按目的地查询:输入目的地,查出所有飞往此地的航班。
(5)删除航班:删除指定编号的航班。
(6)更新航班:更新指定编号的航班。
(7)退出系统。
三、类的设计需要定义如下类*航班信息实体类(AirInfo)*航班编号(id)*航班号(flight_number)*目的地(destination)*起飞日期(flight_date)*航班信息管理类AirInfoManager类*程序入口类TestAirInfo类四、具体要求及推荐实现步骤1.创建实体类AirInfo,属性私有化,根据业务提供需要的构造方法和setter/getter方法。
1.创建航班管理AirInfoManager类,在类中提供列出所有航班的方法,按起飞时间查询的方法、按目的地查询的方法、删除航班的方法、更新航班的方法、退出程序的方法。
2.创建TestAirInfo类,启动和运行程序。
3.航班的信息用ArrayList(或数组)保存。
4.要求代码规范,命名正确。
---
1
OOP(机试)[具体要求在压缩文档中给出]项目名称:AirInfomationSystem基于控制台的航班信息系统,简称AIS具体要求如下:(1)显示航班信息系统主菜单,如图-1所示,包括:1)列出所有航班2)按起飞时间查询3)按目的地查询4)删除航班5)更新航班6)退出系统(2)列出所有航班:查出所有航班的信息,以列表方式显示,包括:编号,航班号,目的地,起飞日期。
(3)按起飞时间查询:输入起飞时间(格式如2011-2-25),查出所有这一天的航班。
(4)按目的地查询:输入目的地,查出所有飞往此地的航班。
(5)删除航班:删除指定编号的航班。
(6)更新航班:更新指定编号的航班。
(7)退出系统。
三、类的设计需要定义如下类航班信息实体类(AirInfo)航班编号(id)航班号(flight_number)目的地(destination)起飞日期(flight_date)航班信息管理类AirInfoManager类程序入口类TestAirInfo类四、具体要求及推荐实现步骤6.创建实体类AirInfo,属性私有化,根据业务提供需要的构造方法和setter/getter方法。
7.创建航班管理AirInfoManager类,在类中提供列出所有航班的方法,按起飞时间查询 的方法、按目的地查询的方法、删除航班的方法、更新航班的方法、退出系统的方法。
8.创建TestAirInfo类,启动和运行系统。
9.航班的信息用ArrayList(或数组)保存。
10.要求代码规范,命名正确。
1
通用ArrayList排序
2015/4/1 18:17:42 3KB comparator ArrayList
1
packagecom.frog.vote.servlet.front;importjava.io.IOException;importjava.sql.Timestamp;importjava.util.ArrayList;importjava.util.List;importjavax.servlet.ServletContext;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importcom.frog.vote.bean.UserBean;importcom.frog.vote.cons.Const;importcom.frog.vote.dao.entity.Vote;importcom.frog.vote.factory.ServiceFactory;publicclassVoteServletextendsHttpServlet{ @Override protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp) throwsServletException,IOException { doPost(req,resp); } @Override protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp) throwsServletException,IOException { req.setCharacterEncoding("gbk"); resp.setContentType("text/html;charset=gbk"); //先取出操作参数 Stringaction=req.getParameter("action"); ServletContextapplication=getServletContext(); //显示的列表 if("show".equals(action)) { //调用service层方法得到所有的 Stringtemp=req.getParameter("page"); intpage=1; if(temp!=null) { try { page=Integer.parseInt(temp); } catch(NumberFormatExceptione) { e.printStackTrace(); } } UserBeanub=(UserBean)req.getSession().getAttribute(Const.USER); intuid=ub.getId(); req.setAttribute("page",ServiceFactory .getVoteService().listUserPage(page,uid)); application.getRequestDispatcher("/WEB-INF/front/list.jsp") .forward(req,resp); return; } elseif("save".equals(action)||"update".equals(action)) { Stringsid=req.getParameter("id"); String[]answers=req.getParameterValues("choice"); Listlist=newArrayList(); inttemp; for(Stringanswer:answers){temp=Integer.parseInt(answer);list.add(temp);} inttid=Integer.parse
2022/9/3 9:36:43 577KB jsp+servlet+mysql
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡