⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 customer.java

📁 本银行系统涉及到多线程
💻 JAVA
字号:
package banking;
import banking.Account;
import java.util.*;
import java.lang.*;
import java.io.DataOutputStream;
/**import banking.Account;
import java.util.*;
import java.lang.*;
import java.io.DataOutputStream;**/


public class Customer
{
	private String firstName;
	//客户姓
	private String lastName;
	//客户名
	private String id;
	//客户的身份证号码
	private Vector accountSet = new Vector();
	//容器类,存放帐户对象
	
	/**初始化客户信息,有客户的身份证号码,客户的姓以及客户的名**/
	public Customer(String first,String last, String i)
	{
		firstName=first;
		lastName=last;
		id = i;
	}

	/**检查帐户号码是否符合,即客户是否存在该帐户**/
	public boolean checkAccount(String pwd,String accID,double balance,int op,DataOutputStream out)
	{
		int i=0;
		
		//对帐户对象做检查,看是否存在帐户。从头到尾的遍历,匹配帐户的号码属性
		while(i<accountSet.size())
		{   
		   //从容器类中取出帐户对象
		    		    
		    Account accT=(Account)accountSet.get(i);
		    	    
		    if (accT==null)
		    {
		    	//容器类中的对象为空就报错
		    	System.out.println("error in checkAccount");
		    	return false;
		    }
		    else
		    {
				 
			//进入帐户操作,需要互斥操作
			if(accT.getAccountNum().equals(accID))
			{
				
				accT.checkPassword(pwd,balance,op,out);
				return true;	
				
			}
		
		     }
		     i++;	
			
		
                }
		try
		{
			out.writeUTF("帐号错误");
		}
		catch (Exception e)
		{
		}
		return false;
	}			

	/**获取用户身份证号码**/
	public String getID()
	{
		return id;
	}
 
	/**创建帐户,要求初始金额与密码**/
	public String createAccount(double balance, String pwd,DataOutputStream out)
	{
		/**生成帐户号码只进行简单处理**/
		//生成帐户号码
		
		String account = new String();
		int randomInt;
		Random r = new Random();
		for(int i = 0;i<7;i++){
			randomInt = ( r.nextInt() )%10;		
			if(randomInt<0)randomInt *= -1;
			account += ( new Integer(randomInt) ) . toString();
		}	
		

		//生成帐户对象,传入初始化参数有金额,密码,还有帐户号码
		Account acc=new Account(balance,pwd,account);  
		
		//把生成的帐户对象加入客户的容器类属性中,使客户拥有该帐户
		accountSet.addElement(acc);

		////////////////////////////////
		try
		{
			out.writeUTF(account);
		}
		catch (Exception e)
		{
		}
		
		//返回帐户号码
		return new String(account);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -