设计的银行账户管理系统,增加一个VIP账户的管理

2024-03-29 22:48

本文主要是介绍设计的银行账户管理系统,增加一个VIP账户的管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

程序功能如下:
1.当单击“创建VIP账户”按钮时,显示如图5-11所示的信息,其中卡号为随机生成的一个在500000到999999之间的一个值,余额初始化为10000元。
2.在“取款”文本框中输入取款金额后,单击“取款”按钮,显示如图5-12所示的信息。如果余额不足,VIP用户可以透支1000元,如取款800,而余额是400,则显示如图5-13所示的信息。如透支超过1000元,如取款1600,而余额是400,则显示如图5-14所示的信息。
3.要求:在上机实验4-3的基础上,通过继承和多态实现上述操作。
C#界面如下:
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace WindowsFormsApp8
{public partial class Form1 : Form{public Form1(){InitializeComponent();}Account account;    //定义一个账户类对象private void btnCrtSavingAc_Click(object sender, EventArgs e){account = new Account();//实例化储蓄卡用户账户string message = string.Format("创建账户成功,用户卡号为:{0}", account.CreditNo);lblShow.Text = "\n" + message +"\n";}private void btnWithDraw_Click(object sender, EventArgs e)//取款{string message;if (account == null)message = "请先创建账户!";       //帐户不存在else if (txtWithDraw.Text == "")message = "请输入取款金额";    //未输入取款金额else{decimal money = decimal.Parse(txtWithDraw.Text);account.WithDraw(money, out message);       //message存放取款的金额信息}lblShow.Text = "\n" + message + "\n";}private void btnDeposit_Click(object sender, EventArgs e){string message;if (account == null)message = "请先创建账户!";    //帐户是否存在else if (txtDeposit.Text == "")message = "请输入存款金额";     //输入存款金额else{decimal money = decimal.Parse(txtDeposit.Text);account.Deposit(money, out message);}lblShow.Text = "\n" + message + "\n";//输出存款金额}private void button2_Click(object sender, EventArgs e)//查询余额操作{string message;if (account == null)message = "请先创建账户!";else{account.show( out message);}lblShow.Text = "\n" + message + "\n";    //输出余额}private void btnCrtVipAc_Click(object sender, EventArgs e){account = new VipAccount();        //实例化VIP用户账户int accountNo = account.CreditNo;string message = string.Format("创建VIP账户成功,用户卡号为:{0}",accountNo);lblShow.Text = "\n" + message + "\n";}}public class Account
{//成员字段的属性改为protectedprotected int creditNo;protected decimal balance;public Account(){Random r = new Random();creditNo = r.Next(100000, 500000);  //产生一个100000到500000的随机数balance = 100;  //余额初始化为100}public decimal Balance //只读属性,读取余额{get { return this.balance; }}public int CreditNo    //只读属性,读取储蓄卡号{get { return this.creditNo; }}//改写Account类的WithDraw为虚方法public virtual bool WithDraw(decimal money, out string message)    //取款{if (money < 0)  //取款金额小于0{message = "操作失败:\n输入金额不正确!";return false;}else if (balance >= money)   //取款金额大于余额{balance -= money;message = "操作成功!\n取款" + money + "元";return true;}else{message = "操作失败!\n余额不足!";return false;}}public bool Deposit(decimal money, out string message){if (money < 0){message = "操作失败:\n输入金额不正确!";return false;}else{balance += money;message = "操作成功!\n存款" + money + "元";return true;}}public bool show(out string message){message = "您的余额为:\n" + balance + "元";return true;}}public class VipAccount : Account{public VipAccount(){Random r = new Random();creditNo = r.Next(500000, 1000000);balance = 10000;}public override bool WithDraw(decimal money, out string message){if (money < 0){message = "操作失败:\n输入金额不正确!";return false;}else if (balance >= money){balance -= money;message = "操作成功!\n取款" + money + "元";return true;}else if (balance+1000 >= money)  //取款金额大于于可透支余额{balance -= money;message = "操作成功!\n取款" + money + "元,透支"+(-balance)+"元";return true;}else{message = "操作失败!\n余额不足!";return false;}}}
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这篇关于设计的银行账户管理系统,增加一个VIP账户的管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/859853

相关文章

用Microsoft.Extensions.Hosting 管理WPF项目.

首先引入必要的包: <ItemGroup><PackageReference Include="CommunityToolkit.Mvvm" Version="8.2.2" /><PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" /><PackageReference Include="Serilog

在线装修管理系统的设计

管理员账户功能包括:系统首页,个人中心,管理员管理,装修队管理,用户管理,装修管理,基础数据管理,论坛管理 前台账户功能包括:系统首页,个人中心,公告信息,论坛,装修,装修队 开发系统:Windows 架构模式:B/S JDK版本:Java JDK1.8 开发工具:IDEA(推荐) 数据库版本: mysql5.7 数据库可视化工具: navicat 服务器:SpringBoot自带 ap

关于如何更好管理好数据库的一点思考

本文尝试从数据库设计理论、ER图简介、性能优化、避免过度设计及权限管理方面进行思考阐述。 一、数据库范式 以下通过详细的示例说明数据库范式的概念,将逐步规范化一个例子,逐级说明每个范式的要求和变换过程。 示例:学生课程登记系统 初始表格如下: 学生ID学生姓名课程ID课程名称教师教师办公室1张三101数学王老师101室2李四102英语李老师102室3王五101数学王老师101室4赵六103物理陈

DDei在线设计器-API-DDeiSheet

DDeiSheet   DDeiSheet是代表一个页签,一个页签含有一个DDeiStage用于显示图形。   DDeiSheet实例包含了一个页签的所有数据,在获取后可以通过它访问其他内容。DDeiFile中的sheets属性记录了当前文件的页签列表。   一个DDeiFile实例至少包含一个DDeiSheet实例。   本篇最后提供的示例可以在DDei文档直接预览 属性 属性名说明数

springboot家政服务管理平台 LW +PPT+源码+讲解

3系统的可行性研究及需求分析 3.1可行性研究 3.1.1技术可行性分析 经过大学四年的学习,已经掌握了JAVA、Mysql数据库等方面的编程技巧和方法,对于这些技术该有的软硬件配置也是齐全的,能够满足开发的需要。 本家政服务管理平台采用的是Mysql作为数据库,可以绝对地保证用户数据的安全;可以与Mysql数据库进行无缝连接。 所以,家政服务管理平台在技术上是可以实施的。 3.1

基于Springboot + vue 的抗疫物质管理系统的设计与实现

目录 📚 前言 📑摘要 📑系统流程 📚 系统架构设计 📚 数据库设计 📚 系统功能的具体实现    💬 系统登录注册 系统登录 登录界面   用户添加  💬 抗疫列表展示模块     区域信息管理 添加物资详情 抗疫物资列表展示 抗疫物资申请 抗疫物资审核 ✒️ 源码实现 💖 源码获取 😁 联系方式 📚 前言 📑博客主页:

比较学习难度:Adobe Illustrator、Photoshop和新兴在线设计平台

从入门设计开始,几乎没有人不知道 Adobe 公司两大设计软件:Adobe Illustrator和 Photoshop。虽然AI和PS很有名,有一定设计经验的设计师可以在早期探索和使用后大致了解AI和PS的区别,但似乎很少有人会系统地比较AI和PS。目前,设计软件功能多样,轻量级和网页设计软件已成为许多设计师的需求。对于初学者来说,一篇有针对性的AI和PS比较总结文章具有非常重要的指导意义。毕竟

vue3项目将所有访问后端springboot的接口统一管理带跨域

vue3项目将所有访问后端springboot的接口统一管理带跨域 一、前言1.安装Axios2.创建Axios实例3.创建API服务文件4.在组件中使用API服务 二、跨域三、总结 一、前言 在Vue 3项目中,统一管理所有访问后端Spring Boot接口的最佳实践是创建一个专门的API服务层。这可以让你的代码更加模块化、可维护和集中管理。你可以使用Axios库作为HTT

基于Java医院药品交易系统详细设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W+,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码+数据库🌟 感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人  Java精品实战案例《600套》 2023-2025年最值得选择的Java毕业设计选题大全:1000个热

展厅设计主要的六大要素

1、从创意开始      展示设计的开始必须创意在先。根据整体的风格思路进行创意,首先要考虑的是主体的造型、大小高度位置以及它和周围展厅的关系。另外其他道具设计制作与运作方式也必须在创意中有明确的体现。      2、平面感      平面感是指对展示艺术设计平面图纸审美和功能两个方面理性的感觉认识。它是三维空间设计认识的基础,也是施工的重要依据。展示空间的设计应先在展场环境的平面