Java测试感想

   上周四的Java考试,老师并没有给我们考暑假给我们布置的学生管理系统的java程序,而是给我们出了一个设计ATM的程序,然而这个对于我们来说是及其难,原因是我们在暑假期间肯定没有好好学习JAVA,我连基本的Java语句都不怎么会,更别说这个设计ATM程序了。尽管建民老师让我们上网查询资料以及查看书本但还是没有什么办法可以完成这个考试,我们考试时间就两个半小时,以我的java基础在这么短的时间想要做出来是不可能实现的。

   通过这次的Java考试,使我发现了我的很多问题,对于定义Account类和几个变量以及输出变量和设设置变量信息我还可以编出来,但是接下来的创建两个txt文件accountinformation.txtaccountlist.txt是一点也没有头绪,完全不知道该怎么办,所以我就没有用文件来设置用户的信息和操作流水信息。很多功能也是没有的,一些定义类和变量和菜单的显示和跳转功能。

  通过这次的Java考试,也使我明白了对于Java的学习,在暑假期间建民老师让我们自学Java,开学要考试,然而我并没有听下去,以至于现在和同学们相差两个月的学习,本来起步就比他们低,如果还不好好学习Java,那么会跟别人越差越远,会被甩下去的,现在对于一些基本的编程我都需要查询资料,更不用说复杂的程序了,所以在以后的学习中,不仅要在课堂上认真的听讲还要在平时的空闲时间中好好的自学Java知识,并且建民老师也跟我们说他的这门课程全要靠我们自学,靠别人是没用的。同时在学习Java的过程中,遇到问题要多学习,多问,多操作。自己不会要比别人花跟多的时间去学习,多问老师同学,学习别人好的学习方法,这样往往可以事半功倍。Java学习应该理论结合实践,我在学习c语言的时候,只注重Jabalpur理论知识,忽视了实践能力,导致在做c语言的代码时往往一窍不通,而学习Java也是如此,我们应该注重理论结合实践,在Jabalpur学习的同时注重实践。实践是检验理论的唯一标准,只有在实践中才能发现问题,这样才可以更好的更改并成长。

  Java的学习并没有秘籍,也没有什么捷径,只能脚踏实地的学弟,注重理论结合实践,做到融会贯通,坚持下去,只有这样才能更好的学习Java,了解Java。

//信1705-2,20173679,张利杰
package test;
import java.util.Timer;
import java.util.TimerTask;
import java.util.Scanner;
public class Account {
	private String accountID;
	private String accountname;
	private String operatedate;
	private int operatetype;
	private String accountpassword;
	private int accountbalance;
	private int amount;
	public void setAccountID(String t) {
		accountID=t;
	}
	public String getAccountID() {
		return accountID;
	}
	public void setAccountname(String t) {
		accountname=t;
	}
	public String getAccountname() {
		return accountname;
	}
	public void setOperatedate(String t) {
		operatedate=t;
	}
	public String getOperatedate() {
		return operatedate;
	}
	public void setOperatetype(int t) {
		operatetype=t;
	}
	public int getOperatetype() {
		return operatetype;
	}
	public void setAccountpassword(String t) {
		accountpassword=t;
	}
	public String getAccountpassword() {
		return accountpassword;
	}
	public void setAccountbalance(int t) {
		accountbalance=t;
	}
	public int getAccountbalance() {
		return accountbalance;
	}
	public void setAmount(int t) {
		amount=t;
	}
	public int getAmount() {
		return amount;
	}

}

//输入密码
class AccountManager{
	int balance=20173679;
	String password="123456";
	int sum1;
	int sum2;
	Scanner sc=new Scanner(System.in);
	//欢迎界面登陆界面
	public void Welcome() throws Exception{
	System.out.println("-----------------------欢迎使用xxxx银行ATM系统---------------------");
}
//菜单
	public void menu() throws Exception
	{
		int a;
		Scanner in=new Scanner(System.in);

		System.out.println("***************************************************************");
		System.out.println("欢迎XXXXXXXX(账户名称)使用中国工商银行自助柜员系统");
		System.out.println("***************************************************************");
		System.out.println("                              1.存款                                                   ");
		System.out.println("                              2.取款                                                  ");
		System.out.println("                              3.转账汇款                                           ");
		System.out.println("                              4.修改密码                                           ");
		System.out.println("                              5.查询余额                                           ");
		System.out.println("****************************************************************");
		a=in.nextInt();
		while(a<0||a>5)
		{
			System.out.print("输入无效,请重新输入:");
			a=in.nextInt();
		}
		switch(a)
		{
			case 1:this.deposit();break;
			case 2:this.draw();break;
			case 3:this.transfer();break;
			case 4:this.change();break;
			case 5:this.query();break;

		}
	}

private void change()throws Exception {

}
private void transfer()throws Exception {
		// TODO Auto-generated method stub

	}
private void deposit()throws Exception {
		// TODO Auto-generated method stub

	}
//查询余额
public void query() throws Exception{
System.out.println(balance);
menu();
}

//取款
public void draw() throws Exception{

int money=0;
if(sum1==5000){
System.out.println("\n"+"对不起,您今日取款已达到限制,请选择其他项目或去柜台取钱。");
TimerTask task = new TimerTask(){
public void run(){
sum1 = 0;
}
};
Timer timer = new Timer();
long delay = 1000*60*60*24;
long period = 1000*60*60*24;
timer.scheduleAtFixedRate(task, delay, period);
menu();
};
System.out.println("当前账户每日可以支取2万元.");
System.out.println(" 1.100");
System.out.println(" 2.500");
System.out.println(" 3.1000");
System.out.println(" 4.1500");
System.out.println(" 5.2000");
System.out.println(" 6.5000");
System.out.println(" 7.其它余额");
System.out.println(" 8.退卡");
System.out.println(" 9返回");
System.out.println("请选取金额");
int dr=sc.nextInt();
switch(dr){
   case 1:
    money=100;
    //balance-=money;

   break;
   case 2:
    money=500;
    //balance-=money;

    break;
   case 3:
    money=1000;
    //balance-=money;

    break;

   case 4:
	    money=1500;
	    //balance-=money;

	    break;

   case 5:
	    money=2000;
	    //balance-=money;

	    break;

   case 6:
	    money=5000;
	    //balance-=money;

	    break;
   case 7:
    System.out.println("只能输入100的整数倍.");
    System.out.println("请输入金额");
    money=sc.nextInt();
    if (money % 100 != 0 || money > 5000) {
System.out.println("您输入的金额不是100的整数倍或者大于5000,请选择:");
other(money);
    }

    break;
    default:draw();
    }
  sum1=sum1+money;
if(money > balance) {
System.out.println("余额不足请重新输入");
draw();
} else if (sum1 > 20000) {
System.out.println("对不起,本次取钱后当天累计金额将超过20000,将跳转到取款界面,请重新取款:" + "\n");
draw();
} else {
balance-=money;

System.out.println("取款成功你的账户余额为" +balance);
// System.out.println(sum);
afterDraw();
}
}
//一次取款大于2000的操作
public void other(int money) throws Exception {
int num;
System.out.println("1 重新输入取款金额;q	 选择退出系统.");
Scanner scanner = new Scanner(System.in);
num = scanner.nextInt();
switch (num) {
case 1:
System.out.println("您选择重新输入金额,将返回取款界面...");
draw();
break;
case 2:
exit();
break;
default:
other(money);
}
}
//取款成功后
public void afterDraw() throws Exception{
int numb;
System.out.println("您选择:1 继续取款;2 返回主页3 退出");
Scanner scanner = new Scanner(System.in);
numb = scanner.nextInt();
switch (numb) {
case 1:
System.out.println("您选择继续取款,将返回取款界面...");
draw();
break;
case 2:
System.out.println("您选择返回主页面,即将返回...");
menu();
case 3:
System.out.println("您选择退出,即将退出...");
exit();
break;
default:
afterDraw();
}
}   

public void exit(){
System.out.println("欢迎XXXXXXXX(账户名称)使用中国工商银行自助柜员系统");
System.exit(0);
}}

  

原文地址:https://www.cnblogs.com/zlj843767688/p/9697246.html

时间: 2024-11-04 02:14:33

Java测试感想的相关文章

Java测试感受

Java测试感想 这周四是我们的Java语言课,这也是我们第一节课,我们进行了一次考试.通过一个暑假的时间,让我们去自学Java,这也是对我们的一次考验. 开始的时候,老师让我们编了一个比暑假的题还要难得程序,刚开始没有头绪,不知道该怎么写,而且还用了文件,感觉特别难.自己也是对照着之前写的程序,编了半天,也是写了最基本的,感觉自己有好多的地方都不会,这个程序和暑假的时候写的程序差不多,但是自己还是不会,还用百度搜索了一些程序用了将近半天的时间,也没写多少. 有一个地方是让判断输入的数是否为整数

java测试网络连接是否成功并设置超时时间

/** * 获取RMI接口状态 * * @return "0":服务正常,"1": 连接报错,"2":连接超时 */ @Override public String getRMIJkzt() { final ExecutorService es = Executors.newFixedThreadPool(1); Callable<String> callable = new Callable<String>() {//使

Java测试工具使用(1)--Junit

在进行测试之前需要导入junit的两个包,分别是 junit:4.12;hamcrest-core:1.1 1.基本测试标签 @Test.@Before.@After 2.组测试 有时候多个测试文件,如果一个一个去执行肯定浪费时间,那么如何做呢? 假如现在有FirTest.java,SecTest.java,每个测试类中有多个方法,想把这个文件一起测试应该如何做呢? 新建一个java测试文件,命名为GroupTest,然后编写代码 @RunWith(Suite.class) @Suite.Sui

JAVA测试编程知识点

JAVA测试编程会涉及的知识点: 1.      testNg框架 2.      http协议和HttpClient. 在依据http头进行不同数据解析: Transfer-Encoding:chunked 在chunked 为ture时接口分段传数据怎么解析处理 chunked 不为ture时接口测试已可以处理. Content-Encoding: gzip 接口数据压缩的怎么解析处理 结合Transfer-Encoding:chunked为ture时接口数据怎么解析处理 不同Content

java个人感想

java与c++相比,摒弃了c++的指针,把c++中的stl封装成一个库,并且改变了其中的某些方法,用法也产生了很多不同,读者在编程过程中需要自己细细体会 个人认为三大框架基于前端+领域逻辑+数据源层,三大框架的区分在于如何控制逻辑和操作数据库获得数据显示到页面,有的是采用数据库映射,还有的直接操作,等等.前端基于html,各种脚本语言(js,jquery,jstl)等等.在这掌握一些技术(ajax.extl,flash等等)达到一些特殊效果 贯穿于三大框架中的主要思想是框架的设计,这种设计建议

决策表法测试感想

决策表法测试感想 将课本决策表法的例题做了一遍,发现决策表法确实测试严格,但是工作量也太大. 在做题的过程中发现主要有这些问题需要注意: 识别条件桩,需要分析问题本身,从适当的角度对输入进行划分.比如在题中,可能很容易注意到月份的划分里面2月分闰年与非闰年,但是将12月从31天的月份中剥离就不容易注意. 识别动作桩,需要对动作理解,能够在适当的层次表述动作.在这个题目中,层次太高就不能将动作进行合适的分解. 条件的组合策略,在组合决策表的条件时候,如果条件间组合位置不合适,在化简决策表的时候也会

8个超实用的Java测试工具和框架

Java入门 如果你才刚开始接触Java世界,那么要做的第一件事情是,安装JDK--Java Development Kit(Java开发工具包),它自带有Java Runtime Environment(JRE)和JVM(Java运行时环境).它能让你在自己的电脑上编译.运行.测试你的Java程序. 此外,你还需要IDE(集成开发环境).选择有很多,如IntelliJ.Eclipse和NetBeans. Java测试工具 下面是我精选的8个最棒的Java测试工具和框架. 1.Arquillia

Java测试覆盖率工具----Cobertura,EclEmma

Cobertura 是一个与Junit集成的代码覆盖率测量工具 它是免费.开源的 它可以与Ant和Maven集成,也可以通过命令行调用 可以生成HTML或XML格式的报告 可以按照不同的标准对HTML结果进行排序 为每个类.包以及整个项目计算所覆盖的代码行与代码分支的百分比例 Eclipse插件地址: http://ecobertura.johoop.de/update/ (requires Eclipse 3.5+) 使用Ant来执行Cobertura 操作步骤: 1.添加核心依赖jar包--

在Jmeter中使用自定义编写的Java测试代码

分类: 测试工具 2007-01-19 15:02 8204人阅读 评论(3) 收藏 举报 测试javaloadrunner编译器importtemplates 我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","Java Vuser"等协议.同样,Jmeter也支持自定义编写的测试代码,不过与LoadRunner不同的是,Jmeter没有自带编译器,需要借助