JAVA基础测试_模拟银行自助终端系统机试题
Java基础笔试机试测试题(带答案)
Java基础考试题
班级:__________ 姓名:___________ 日期:_____________
一、笔试(45题,每题2分)
1) 分析下面的Java程序段,编译运行后的输出结果是()。
public class Test {
public static void changeString(StringBuffer sb) {
sb.append("stringbuffer2");
}
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("stringbuffer1");
changeString(sb);
System.out.println("sb = " + sb.toString());
}
}
A. sb = stringbuffer2stringbuffer1
B. sb = stringbuffer1
C. sb = stringbuffer2
D. sb = stringbuffer1stringbuffer2
2) 在Java中,包有多种用途,但不包含()。
A. 将类组合成较小的单元,便于使用
B. 有助于避免命名冲突
C. 有助于提高运行效率
D. 允许在更广的范围内保护类、数据和方法
3) 在Java中,如果要在字符串类型s="java" 中,得到字母'v' 出现的位置,选()语句。
A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v');
Java基础笔试机试测试题带答案
Java基础考试题
班级:__________ 姓名:___________ 日期:_____________
一、笔试(45题,每题2分)
1) 分析下面的Java程序段,编译运行后的输出结果是()。
public class Test {
public static void changeString(StringBuffer sb) {
sb.append("stringbuffer2");
}
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("stringbuffer1");
changeString(sb);
.toString());
}
}
A. sb = stringbuffer2stringbuffer1
B. sb = stringbuffer1
C. sb = stringbuffer2
D. sb = stringbuffer1stringbuffer2
2) 在Java中,包有多种用途,但不包含()。
A. 将类组合成较小的单元,便于使用
B. 有助于避免命名冲突
C. 有助于提高运行效率
D. 允许在更广的范围内保护类、数据和方法
3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。
A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v');
4)下列代码运行后,变量c的值是()。
java基础笔试测试题及答案
Java 一章至五章考试
一.填空题(8分)
1.面向对象的三大原则是( 封装),( 继承)和( 多态).2分
2.如果想在对象实例化的同时就初始化成员属性,则使用( 构造函数).2分
3.( 实体)方法和( 构造)方法不能修饰为abstract?2分
二.选择题(60分)
1) 在Java言语中,以下〔a,d〕是不满足命名标准的变量名。〔选择二项〕
a) 姓名
b) $Name
c) _instanceof
d) instanceof
2) 以下Java代码片段的输出结果是( a )。
char c='a';
int i=c;
float f=i;
byte b=(byte)c;
System.out.println(c+","+i+","+f+","+b);
a) 编译错误
b) a,97,97,97
c) a,97,97.0,97
d) a,97,97.0f,97
3) 以下Java代码中,空白处的代码是〔b,c 〕。(选择两项)
public interface Fee{
public float calLabFee(float unitPrice, float time);
}
public class FeeImpl implements Fee {
public float calLabFee(float unitPrice, float time){
return unitPrice X time;
}
}
public class FeeInterfaceTest {
public static void main(Stringargs){
JAVA测试题(三套含答案)
JAVA测试题(三套含答案)
<测试一>
1.在单一文件中import、class和package的正确出现顺序是:A
A.package, import, class
B.class, import, package
C.import, package, class
D.package, class, import
2.public static void main方法的参数描述是:A,D
A.String args[]
B.Strings args[]
C.String args
D.String []args
3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D
A.float f=1.3;
B.char c="a";
C.byte b=257;
D.boolean b=null;
E.int i=10;
4.编译,运行下列代码后的结果是:D
public class Test {
public static void main (String args []) {
int age;
age = age + 1;
System.out.println("The age is " + age);
}
}
A.编译,运行后没有输出
B.编译,运行后输出:The age is 1
C.能通过编译,但运行时产生错误
D.不能通过编译
4.下面那些关键字不是JAVA的关键字B
A if
B then
C goto
D while
E case
5.下面那些不是合法的变量定义:A,F
A.2variable
B.variable2
C. _whatavariable
农业银行Java基础面试题
基础测试
基础知识部分:
1.谈谈final, finally, finalize的区别。
final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally 是异常处理语句结构的一部分,表示总是执行。 finalize 是Object 类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。
2.HashM ap和Hashtable的区别。
HashMap 是 Hashtable 的轻量级实现(非线程安全
的实现),他们都完成了 Map 接口,主要区别在于 HashMap 允许空( null )键值( key ) , 由于非线程安全,效率上可能高于 Hashtable 。
HashMap 允许将 null 作为一个 entry 的 key 或者 value ,而 Hashtable 不允许。
HashMap 把 Hashtable 的 contains 方法去掉了,改成 containsvalue 和containsKey 。因为 contains 方法容易让人引起误解。 Hashtable 继承自Dictionary 类,而 HashMap 是 Java1.2 引进的 Map interface 的一个实现。最大的不同是, Hashtable 的方法是 Synchronize 的,而 HashMap 不是,在多个线程访问 Hashtable 时,不需要自己为它的方法实现同步,而 HashMap 就必须为之提供外同步。
永隆银行-Java 试题 AP PG
笔试题
一、选择题
1、关于Java 类的加载过程,下面哪些描述是正确的()
A、在 Java 中,有四种类型的类加载器:BootStrapClassLoader、ExtClassLoader、AppClassLoader 以及用户自定义的 ClassLoader。
B、使用 new 关键字创建类实例时,其实就显示地包含了类的加载过程
C、在 Java 中,类的实例化流程分为两个部分:类的加载和类的实例化。类的加载又分为显式加载和隐式加载。
D、Class.forName 来加载类时,是通过 ExtClassLoader进行加载的。
2、关于HashMap的实现机制,下面哪些描述是正确的()
A、HashMap中key-value 当成一个整体进行处理,系统总是根据数组的坐标来获得key-value 的存储位置。
B、HashMap基于哈希表的 Map 接口的实现,允许使用 null 值和 null 键。
C、如果HashMap中,如果Key的hash相同的话,HashMap将会出错。
D、HashMap每次容量的扩增都是以2的倍数来增加。
3、下面的代码执行输出正确的是()
1. public class test(
2. public int aMethod()[
3. static int i=0;
4. i++;
5. return I;
6. )
7. public static void main (String args[]){
8. test test = new test();
9. test.aMethod();
Java基础试题及其答案
Java基础试题及其答案
J a v a试题
1) java程序中,main⽅法的格式正确的是()。(选择⼀项)
a)static void main(String[] args)
b)public void main(String[] args)
c)public static void main(String[]s)
d)public static void main(String[] args)
2)给定java代码,如下:
public byte count(byte b1,byte b2){
return______;
}
要使⽤这段代码能够编译成功,横线处可以填⼊()。(选择⼀项)
a)(byte) (b1-b2)
b)(byte) b1-b2
c) b1-b2
d) (byte) b1/b2
3)在Java中,在包下定义⼀个类,要让包下的所有类都可以访问这个类,这个类必须定义为()。(选择⼀项)a)protected
b)private
c)public
d)friendly
4)在Java中,下列()语句不能通过编译。(选择⼀项)
a) String s= “join”+ “was”+ “here”;
b) String s= “join”+3; “”+new Person() toString()
c) int a= 3+5
d) float f=5+; double float
6)给定java代码如下,运⾏时,会产⽣()类型的异常。(选择⼀项)
String s=null;
(“abc”);
a)ArithmeticException
自助终端考试试题及答案
自助终端考试试题
一、填空题
1)要使用ping命令连续测试TCP/IP地址:192。168.0。1的连通性应输入 ping 192。
168。0.1 —t 。
2)GWI公司BST系列的发票打印机KP76M型号所用纸的宽度 76mm ,凭条打印机
MB510所用纸的宽度 80mm 。
3)GWI公司自动产品中电源配置要求零线与火线电压交流220V ,零线与地线电压
交流〈3V。零线对地线阻抗小于4欧姆
4)在IE地址栏中输入http://fbecserver/START。tips可以进工行自助网站
5)表面声波屏按接口分为串口和USB口,按厚度分,分为6B和4B。
6)OMRON吞卡器中有磁感应闸门的为V2XF,MVF ,其中V2XF更改程序后可实现抖
动进卡功能。
7)启动中如不想进入自助软件程序可以操作系统启动过程中按住shift键
8)散装冠捷和长城显示器可分为逆变器主板控制板屏四个部分
9)GWI公司BST系列的票据打印的型号是MB500或者 MB510
10)在没有软驱的机器上,用命令来虚拟软盘,例如将c:\tmp虚拟成软盘,建立c:\tmp目
录,将自助终端密钥盘内容(akey_fil)拷入该目录,点击“开始”,选择“运行”菜单,在输入框内输入subst a:c:\tmp并按确定即可。
11)GWI公司BST系列的发票打印机打印方式:9针点阵式双向打印
12)我公司用的表面声波的触摸屏有吉锐和TSD 或者(特思达)
13)240的COM1口在主板上,COM3-C0M6口通过另一根转接线转接出来,从靠红外开始为
银行java开发笔试面试题13道(含答案)
银⾏java开发笔试⾯试题13道(含答案)
1、在多线程环境中使⽤HashMap会有什么问题?在什么情况下使⽤get()⽅法会产⽣⽆限循环?
HashMap本⾝没有什么问题,有没有问题取决于你是如何使⽤它的。⽐如,你在⼀个线程⾥初始化了⼀个HashMap然后在多个其他线程⾥对其进⾏读取,这肯定没有任何问题。有个例⼦就是使⽤HashMap来存储系统配置项。当有多于⼀个线程对HashMap进⾏修改操作的时候才会真正产⽣问题,⽐如增加、删除、更新键值对的时候。因为put()操作可以造成重新分配存储⼤⼩(re-sizeing)的动作,因此有可能造成⽆限循环的发⽣,所以这时需要使⽤Hashtable或者ConcurrentHashMap,⽽后者更优。
2、不重写Bean的hashCode()⽅法是否会对性能带来影响?
这个问题⾮常好,每个⼈可能都会有⾃⼰的体会。按照我掌握的知识来说,如果⼀个计算hash的⽅法写得不好,直接的影响是,当向HashMap中添加元素的时候会更频繁地造成冲突,因此最终增加了耗时。但是⾃从Java 8开始,这种影响不再像前⼏个版本那样显著了,因为当冲突的发⽣超出了⼀定的限度之后,链表类的实现将会被替换成⼆叉树(binary tree)实现,这时你仍可以得到O(logN)的开销,优于链表类的O(n)。
3、对于⼀个不可修改的类,它的每个对象是不是都必须声明成final的?
不尽然,因为你可以通过将成员声明成⾮final且private,并且不要在除了构造函数的其他地⽅来修改它。不要为它们提供setter⽅法,同时不会通过任何函数泄露出对此成员的引⽤。需要记住的是,把对象声明成final仅仅保证了它不会被重新赋上另外⼀个值,你仍然可以通过此引⽤来修改引⽤对象的属性。这⼀点是关键,⾯试官通常喜欢听到你强调这⼀点。
银行java笔试题
银行java笔试题
以下是一份银行Java笔试题,供您参考:
一、选择题(每题2分,共10分)
1. Java中的继承是指什么?
A. 一种对象模仿另一种对象的特性
B. 一种对象从另一种对象获得属性
C. 一种对象包含另一种对象
D. 一种对象调用另一种对象的成员方法
2. 在Java中,什么是异常处理?
A. 处理程序中的错误
B. 处理程序中的异常情况
C. 处理程序中的异常数据
D. 处理程序中的异常逻辑
3. Java中的final关键字可以用来修饰哪些类型的变量?
A. 基本数据类型和引用类型
B. 基本数据类型和对象类型
C. 引用类型和对象类型
D. 基本数据类型、引用类型和对象类型
4. Java中的synchronized关键字的作用是什么?
A. 保证多个线程同时访问某个方法时互斥执行
B. 保证多个线程同时访问某个代码块时互斥执行
C. 保证多个线程同时访问某个对象时互斥执行
D. 保证多个线程同时访问某个变量时互斥执行
5. Java中的接口和抽象类有什么区别?
A. 接口是抽象类的一种特殊形式,不能包含实例变量和具体实现,只能包含抽象方法,而抽象类可以包含实例变量和具体实现,但不能包含具体方法。
B. 接口是一种特殊的抽象类,可以包含抽象方法和常量,但不能包含具体实现和实例变量,而抽象类可以包含实例变量和具体实现,但不能包含具体方法。
C. 接口是一种特殊的抽象类,可以包含抽象方法和常量,但不能包含实例变量和具体实现,而抽象类可以包含实例变量和具体实现,但不能包含具体方法。
D. 接口是一种特殊的类,可以包含抽象方法和常量,但不能包含实例变量和具体实现,而抽象类可以包含实例变量和具体实现,但不能包含具体方法。
JAVA基础考试题及答案
(通用版)JAVA基础考试题及答案
一、选择题】、以下关于java中抽象类的说法正确的有(A)
A、含有抽象方法的类必须声明为抽象类
B、抽象类中不可以有非抽象方法
C、抽象类中至少需要包含一个抽象方法
D、抽象类无法实例化
2、以下哪个关键字可以用于实现同步(C)native
A、staticsynchronized
B、finalize3、以下哪些集合属于Collection的子类(C D)[选两项]
A、TreeMapHashtable
B、ArrayListHashSet
4、下面关于线程的说法错误的选项是(B)A、线程其实就是进程中的一个控制单元,它负责就是程序的执行。一个进程中至少有一个线程
B、当一个类实现了 Runnable接口后,并实现了其run方法,就可以直接调用这个类的start方法开启线程
C、继承Thread类或者实现Runnable接口都可以封装线程要执行的任务
D、Thread类本身就是一个线程类,可以直接创立Thread类对象,开启线程5、下面关于map集合说法正确的选项是(A)
A、map集合中不能直接使用Ileralor■进行迭代
B、对map集合使用keySet方法,会得到所有value的值组成•个list集合
C、使用map的append方法可以向map集合中添加元索
D、使用removeAll方法可以将map集合中的元素清空
6以下哪个方法可以使线程从运行状态进入其他阻塞状态(A B )A. sleep B. wait C. yield D. start
7、下面的代码段执行之后count的值是什么()int count = 1; ( D )for (int i = 1; i <= 5; i++){ count += i; }
Java机考200题
Java机考试题
一、第一类题
1.编写程序,从标准输入读入华氏度,将其转换为摄氏度,并在标准输出打印转换结果。 转
换公式为:摄氏度 = (5/9)*(华氏度-32)。
2.编写程序读入圆柱体的半径和高,计算圆柱的体积,并打印圆柱体的体积。
3.编写程序读入球的半径,计算球的体积和表面积,并显示结果。
4.从命令行读入一些参数,打印参数个数和参数列表。
5.编写程序读入英尺数,转换为米数并显示结果。一英尺等于0.305米。
6.编写程序将磅转换为千克。程序提示用户输入磅数,转换成千克并显示结果。 一磅等于
0.454千克。
7.编写一个程序,读入费用与提成率,计算提成与总费用,例如:如果使用者键入10 作为
费用,15%作为提成率,计算结果显示1.5作为提成费,11.5作为总费用。
8. (求一个整数各位的和)编写程序读入0到1000之间的一个整数,并将其各位数字加起
来。例如整数932,各位数字之和为14。
9. (将大写字母转换为小写字母)编写一个方法将大写字母转换为小写字母。
10. (从ASCII求出对应的字符)编写程序读入一个ASCII码(从1到128的整数)并显示它
表示的字符。 例如,如果用户输入97,程序显示字母a。
11. (判断三角形〉编写程序输入三角形的三个边,判断输入是否有效。
12. (判断一个数是否为偶数)编写程序读入一个整数并判断其是否为偶数。
13.编写程序输入一个整数,判断其是否能被5和6整除,是否能被5或6整除,是否能被 5
或6整除但不能被5和6整除。
14.编写程序,读入资金额(现值)、年利率和年数,显示终值(将来的资金额),计算公
JAVA基础考试题及答案
B. this(Person(n,a)); C. this(n,a); D. this(name,age). 答案 C 分析: 在同一个类的不同构造方法中调用该类的其它构造方法需要使用 this(…) 的形式, 而且必须是在构造方法的第一行调用,这个和普通的方法重载调用的方 式不同, 普通的方法可以直接使用方法名加参数来调用, 而且调用位置没有限制, 因此答案 A 是不行的,B 的语法就是错误的,D 的错误在于在父类型的构造函数 被调用前不能引用类的成员。 构造方法是一个类对象实例化的起点(虽然严格来 说首先执行的并不是构造方法的第一个语句,而是内存的分配) ,因此在构造方 法中不能将成员作为参数引用。 11. public void test() {// (多选题) try { oneMethod(); System.out.println("condition 1"); } catch (ArrayIndexOutOfBoundsException e) { System.out.println("condition 2"); } catch(Exception e) { System.out.println("condition 3"); } finally { System.out.println("finally"); } } 在 oneMethod()方法运行正常的情况下将显示什么? A. condition 1 B. condition 2 C. condition 3 D. finally 答案 ad 分析: 如果 try 块中的语句在执行时发生异常,则执行从该处中断而进入 catch 块,根据异常的类型进行匹配,最前面的优先进行匹配比较,只要该异常 是 catch 中指定的异常的子类就匹配成功进而执行相应的 catch 中的内容,而 finally 块中的内容无论是否发生异常都将被执行。 12. 给出下面的代码: (单选题) public class Test { void printValue(int m){ do { System.out.println("The value is"+m);} while( --m > 10 ) } public static void main(String arg[]) {
java基础测试题
java基础测试题
1. 下面代码的输出结果是什么?请解释原因。
```java
public class Test {
public static void main(String[] args) {
int a = 5;
int b = 2;
int c = a / b;
System.out.println(c);
}
}
```
答案:输出结果为2。
解释:在Java中,整数相除的结果仍然是整数。当两个整数相除时,如a/b,如果除不尽,整数部分将被保留,小数部分将被忽略。在这个
例子中,5除以2的结果是2,因此输出结果为2。
2. 请简要说明Java中的包装类是什么,并举例说明如何使用包装类。
答案:Java中的包装类是一种将基本数据类型封装为对象的类。包
装类提供了许多方法,可以使得基本数据类型具备对象的特性。
例如,可以使用Integer包装类来操作整数数据:
```java
// 创建一个Integer对象
Integer num = new Integer(10);
// 调用包装类的方法
int value = num.intValue();
System.out.println(value); // 输出结果为10
// 使用包装类进行数值的比较
Integer num1 = new Integer(5);
Integer num2 = new Integer(10);
int result = pareTo(num2);
System.out.println(result); // 输出结果为-1,表示num1小于num2
Java基础练习题 附答案
for(inti=0,j=10;total>30;++i,--j){
i="+i+":j="+j);
total+=(i+j);
}
"+total);
}
}
A.产生运行错误
B.产生编译错误
C.输出"Total0"
D.产生如下输出:
i=0:j=10
i=1:j=9
i=2:j=8
Total30
3.intx=4;
4."valueis"+((x>4)?99.99:9));
5.}
6.}
A.输出:valueis99.99
B.输出:valueis9
C.输出:valueis9.0
D.在第4行出现编译错误
3)以下代码段的输出结果为
1.intx=0,y=4,z=5;
2.if(x>2){
3.if(y<5){
6)以下程序的运行结果为:
publicclassTest{
publicstaticvoidmain(Stringargv[]){
}
}
A.goodmorningB."good"+"morning"
《JavaEE基础》课程考试试卷及答案解析
《JavaEE 基础》课程考试试卷(学生考试用)
第 1 页 共 2 页
课程名称: JavaEE
基础 学分: 4 大纲编号
试卷编号: A 考试方式: 开卷 满分分值: 100 考试时间: 100 分钟 组卷日期: 2021年6月5 日 组卷教师(签字): 审定人(签字): 学生班级: 学生学号: 学生姓名:
图3 login.html
3.完成JavaBean 程序设计题。
使用JSP 和JavaBean 来实现一个存款计算器。要求:如图3所示,编写rate.jsp 调用JavaBean(RateCalculater.java)计算当输入金额和存款周期后,点击计算得出存款的本息合计,注意:假设一年利率1%,两年利率2%,三年利率3%,如图4所示。 (公式:本息合=本金*(1+利率)^年数)
图3 rate.jsp 图4 rate.jsp
二、综合题(本大题共4小题,每题10分,共40分)
新建数据库StudentDB ,新建表student ,表结构如下: student 表
字段名称
字段类型
备注
id int 学生编号(主键、自增) sname varchar(20) 学生姓名 sage
int
学生年龄
考试环境:
开发平台:Eclipse/MyEclipse Web 服务器:Tomcat
数据库:SQLServer/Oracle/MYSQL
一、程序设计题(本大题共3小题,每题20分,共60分)
1.完成JSP 程序设计题。
编写一个用户信息采集页面getstumsg.jsp ,如图1所示。编写stumsg.jsp ,获取信息页面提交的内容并使用out 对象输出,运行结果如图2所示:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
淄博汉企Java基础考核项目
模拟银行自助终端系统
一.本系统模拟银行用户使用ATM机开户、查询、存款、取款功能,要求使用java语言编程实现。
说明:
1.对于数据输入异常,可使用java异常处理机制进行处理。
2.评分将以功能实现与代码规范性相结合的方式进行考核。
3.如果对项目需求有疑问,可以随时以QQ留言方式联系我进行咨询。
4.国庆放假期间,每天都有老师在公司值班,10月4日是我在公司值班,10月7日正常上班,欢迎大家到公司来做项目。
二.项目功能要求:
项目开始运行显示主菜单为:
银行自助终端系统
****************************
0.------开户
1.------查询
2.------存款
3.------取款
4.------退出
****************************
请选择你要执行的功能:
此时,用户可以通过键盘输入选择自己要实现的功能,如果输入不是0,1,2,3,4,则系统提示:
你选择的菜单不存在!
请重新选择:
要求用户重新输入数据进行菜单选择!
当用户输入0时,则进入查询功能:系统提示:
****************************
你选择的为开户功能
请输入你的姓名:
此时用户需要输入姓名,输入完毕后系统提示:
请输入你的身份证号:
此时用户需要输入18位身份证号,输入完毕如果验证未通过要求继续输入,直到验证通过后系统提示:
请输入你的密码:
此时用户需要输入6位纯数字密码,输入完毕如果验证未通过要求继续输入,验证通过后系统提示:
开户成功,谢谢使用!
银行自助终端系统
****************************
0.------开户
1.------查询
2.------存款
3.------取款
4.------退出
****************************
请选择你要执行的功能:
当用户输入1时,则进入查询功能:系统提示:
****************************
你选择的为查询功能
请输入你要查询的卡号:
此时用户需要输入查询的卡号,系统对卡号进行检测,如果卡号不存在,则提示:你输入的卡号不存在,请重新输入:
请输入你要查询的卡号:
要求重新输入卡号,当用户输入正确卡号后,则提示:
请输入你的密码:
此时用户需要输入6位纯数字密码,输入完毕如果验证未通过要求继续输入(最多3次),验证通过后系统将显示当前用户账号信息并进入主菜单:
你查询的账号信息为:
******************************
姓名身份证号卡号金额
张三丰 420106************ 111111 12800.0
银行自助终端系统
****************************
0.------开户
1.------查询
2.------存款
3.------取款
4.------退出
****************************
请选择你要执行的功能:
当用户输入2时,则进入存款功能:系统提示:
****************************
你选择的为存款功能
请输入你要存款的卡号:
此时用户需要输入存款的卡号,系统对卡号进行检测,如果卡号不存在,则提示:
你输入的卡号不存在,请重新输入:
请输入你要存款的卡号:
要求重新输入卡号,当用户输入正确卡号后,则提示:
请输入你的密码:
此时用户需要输入6位纯数字密码,输入完毕如果验证未通过要求继续输入(最多3次),验证通过后系统将显示当前用户账号信息并进入主菜单:
你要存款的账号信息为:
******************************
姓名身份证号卡号金额
张三丰 420106************ 111111 12800.0
请输入你要存入的金额:
此时要求用户输入存款金额,系统对金额进行判断,如果输入的数据小于等于0,则提示:你输入的数据无效,系统将自动退出!谢谢使用
银行自助终端系统
****************************
0.------开户
1.------查询
2.------存款
3.------取款
4.------退出
****************************
请选择你要执行的功能:
如果用户输入数据合法,系统提示存款成功,并回到主菜单:
存款成功,谢谢使用!
银行自助终端系统
****************************
0.------开户
1.------查询
2.------存款
3.------取款
4.------退出
****************************
请选择你要执行的功能:
数据将存入用户账号,如果用户再次进行数据查询,则能看到已经改变后的账户金额。(说明:本系统使用文件进行数据存储,因此如果用户重新启动程序,数据将从文件中读取重新初始化到内存!此功能选做,可参考对象的序列化和反序列化或JSON)
当用户输入3时,则进入取款功能:系统提示:
****************************
你选择的为取款功能请输入你要取款的卡号:
此时用户需要输入取款的卡号,系统对卡号进行检测,如果卡号不存在,则提示:
你输入的卡号不存在,请重新输入:
请输入你要取款的卡号:
要求重新输入卡号,当用户输入正确卡号后,则提示:
请输入你的密码:
此时用户需要输入6位纯数字密码,输入完毕如果验证未通过要求继续输入(最多3次),验证通过后系统将显示当前用户账号信息并进入主菜单:
你要取款的账号信息为: