Java编程练习之类的继承

1.创建银行卡类,并分别设计两个储蓄卡和信用卡子类。

 import javax.swing.plaf.BorderUIResource;import java.util.Scanner;class Card {int Id;   //银行卡;int password;  //密码;double balance=2000; //账户存款金额;String AccountType;public boolean Login(String AccountType){boolean result=false;// String AccountType1="储蓄卡";// String AccountType2="信用卡";Scanner sc=new Scanner(System.in);for(int i=0;i<4;i++) {if (AccountType.equals("储蓄卡")) {System.out.println("请您输入储蓄卡密码:");password=sc.nextInt();if(result=(password==123456)){System.out.println("储蓄卡密码输入正确,正在加载中,请您耐心等待……");return result;}else if(i<2&&password!=123456){System.out.println("储蓄卡密码输入错误");}else{System.out.println("储蓄卡密码连续3次输入错误,您的账号已被锁定,请您24小时后重试");}} else if (AccountType.equals("信用卡")) {System.out.println("请您输入信用卡密码:");password=sc.nextInt();if(result=(password==234567)){System.out.println("信用卡密码输入正确,正在加载中,请您耐心等待……");return result;}else if(i<2&&password!=234567){System.out.println("信用卡密码输入错误");}else{System.out.println("信用卡密码连续3次输入错误,您的账号已被锁定,请您24小时后重试");}} else {System.out.println("本系统暂不支持此类银行卡的登陆!");}}return false;}//存款方法public  void Savemoney(){double money;Scanner m=new Scanner(System.in);System.out.println("请输入存款金额:");money=m.nextDouble();System.out.println("请确认存款金额:"+money+"元。");balance=balance+money;//System.out.println("恭喜您存款成功,当前账户的存款金额为:"+balance+"元。");System.out.println("恭喜您存款成功,当前账户的存款金额为:"+balance+"元。");}}
class Card2 extends Card{double money;double maxOverdraf=20000;//最大透支额度;void Withdraw(){double money;Scanner m1=new Scanner(System.in);System.out.println("请输入取款金额:");money=m1.nextDouble();if(money<=balance+maxOverdraf){System.out.println("请您确认取款金额:" + money + "元。");double account=balance-money;System.out.println("account:"+account);if(account<=0){System.out.println("当前账户剩余金额为:" + 0+ "元。");maxOverdraf=maxOverdraf+account;
//                System.out.println("money:"+money);
//                System.out.println("balance:"+balance);
//                System.out.println("maxOverdraf:"+maxOverdraf);System.out.println("当前账户剩余透支金额为:" + maxOverdraf + "元。");}else{
//                System.out.println("money:"+money);
//                System.out.println("balance:"+balance);
//                System.out.println("maxOverdraf:"+maxOverdraf);System.out.println("当前账户剩余金额为:" + account + "元。");System.out.println("当前账户剩余透支金额为:" + maxOverdraf + "元。");}}else{double account=money-balance-maxOverdraf;System.out.println("您的账户已透支,透支金额为:" + account+ "元,您取款失败。");}}}class Card1 extends Card {  //储蓄卡double money;private void Withdraw() {double r;double money;Scanner m=new Scanner(System.in);System.out.println("请输入取款金额:");money=m.nextDouble();if (money <= balance) {System.out.println("请您确认取款金额:" + money + "元。");balance = balance - money;System.out.println("恭喜您取款成功,账户剩余金额为" + balance + "元。");} else {System.out.println("请确认取款金额:"+money+"元。");r= money-balance;System.out.println("您的账户余额不足,还差"+r+"元。");}}
public static void main(String[] args){String yewu;String AccountType;  //银行卡账户类型;Card1 c1=new Card1();Card2 c2=new Card2();Scanner sc1=new Scanner(System.in);System.out.println("请您选择银行卡类型:");AccountType=sc1.nextLine();if(AccountType.equals("储蓄卡")){boolean cL=c1.Login(AccountType);if(cL) {System.out.println("请您选择业务类型:");yewu = sc1.nextLine();if(yewu.equals("取款")){// int money=sc1.nextInt();c1.Withdraw();}else if(yewu.equals("存款")){//int money=sc1.nextInt();c1.Savemoney();}else{System.out.println("本系统暂不支持此业务!");}}else{System.out.println("储蓄卡登陆失败。");}}else if(AccountType.equals("信用卡")){boolean cL1= c2.Login(AccountType);if(cL1) {System.out.println("请您选择业务类型:");yewu = sc1.nextLine();if(yewu.equals("取款")){// int money=sc1.nextInt();c2.Withdraw();}else if(yewu.equals("存款")){//int money=sc1.nextInt();c2.Savemoney();}else{System.out.println("本系统暂不支持此业务!");}}else{System.out.println("储蓄卡登陆失败。");}}else{System.out.println("本系统暂不支持此银行卡类型!");}}}储蓄卡子类效果:信用卡子类效果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/680282.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

正则表达式与正则可视化工具:解密文本处理的利器

正则表达式与正则可视化工具&#xff1a;解密文本处理的利器 引言 在计算机科学和软件开发领域&#xff0c;正则表达式是一种强大而灵活的文本处理工具。然而&#xff0c;对于初学者来说&#xff0c;正则表达式的语法和规则可能会显得晦涩难懂。为了帮助初学者更好地理解和学…

ubuntu快速安装miniconda

ubuntu快速安装miniconda 环境 ubuntu.22.04 显卡 RTX 3050 关于选择Miniconda还是Anaconda的问题&#xff0c;Anaconda安装包比较大&#xff0c;耗时比较长&#xff0c;如果你是绝对的初学者&#xff0c;选择Anaconda会比较稳妥一些&#xff1b;否则建议你还是选择Miniconda安…

linux系统下vscode portable版本的python环境搭建003:venv

这里写自定义目录标题 python安装方案一. 使用源码安装&#xff08;有[构建工具](https://blog.csdn.net/ResumeProject/article/details/136095629)的情况下&#xff09;方案二.使用系统包管理器 虚拟环境安装TESTCG 本文目的&#xff1a;希望在获得一个新的系统之后&#xff…

LeetCode:67.二进制求和

67. 二进制求和 - 力扣&#xff08;LeetCode&#xff09; 又是一道求和题&#xff0c;% / 在求和的用途了解了些&#xff0c; 目录 题目&#xff1a; 思路分析&#xff1a; 博主代码: 官方代码&#xff1a; 每日表情包&#xff1a; 题目&#xff1a; 思路分析&#xf…

2024-02-12 Unity 编辑器开发之编辑器拓展3 —— EditorGUI

文章目录 1 GUILayout2 EditorGUI 介绍3 文本、层级、标签、颜色拾取3.1 LabelField3.2 LayerField3.3 TagField3.4 ColorField3.5 代码示例 4 枚举选择、整数选择、按下按钮4.1 EnumPopup / EnumFlagsField4.2 IntPopup4.3 DropdownButton4.4 代码示例 5 对象关联、各类型输入…

Linux基础I/O(三)——缓冲区和文件系统

文章目录 什么是C语言的缓冲区理解文件系统理解软硬链接 什么是C语言的缓冲区 C语言的缓冲区其实就是一部分内存 那么它的作用是什么&#xff1f; 下面有一个例子&#xff1a; 你在陕西&#xff0c;你远在山东的同学要过生日了&#xff0c;你打算送给他一份生日礼物。你有两种方…

Centos9部署LAMP

配置LAMP 参考文档 https://blog.csdn.net/weixin_51432789/article/details/112254685 首先安装 yum install -y libxml2-devel 安装apr-1.7.4 解压 tar xf apr-1.7.4.tar.gz 安装以来 yum -y install gcc cd apr-1.7.4/ 预编译 ./configure --prefix/usr/local/…

鸿蒙系统进一步学习(一):学习资料总结,少走弯路

随着鸿蒙Next的计划越来越近&#xff0c;笔者之前的鸿蒙系统扫盲系列中&#xff0c;有很多朋友给我留言&#xff0c;不同的角度的问了一些问题&#xff0c;我明显感觉到一点&#xff0c;那就是许多人参与鸿蒙开发&#xff0c;但是又不知道从哪里下手&#xff0c;因为资料太多&a…

【lesson51】信号之信号处理

文章目录 信号处理可重入函数volatileSIGCHLD信号 信号处理 信号产生之后&#xff0c;信号可能无法被立即处理&#xff0c;一般在合适的时候处理。 1.在合适的时候处理&#xff08;是什么时候&#xff1f;&#xff09; 信号相关的数据字段都是在进程PCB内部。 而进程工作的状态…

零基础学编程怎么入手,中文编程工具构件箱之星空构件用法教程,系统化的编程视频教程上线

零基础学编程怎么入手&#xff0c;中文编程工具构件箱之星空构件用法教程&#xff0c;系统化的编程视频教程上线 一、前言 今天给大家分享的中文编程开发语言工具资料如下&#xff1a; 编程入门视频教程链接 http://​ https://edu.csdn.net/course/detail/39036 ​ 编程…

Days 29 ElfBoard LCD屏双电荷泵电路原理

7寸LCD屏幕的屏幕排线中采用的供电电压是5V供电&#xff0c;但是在屏幕工作时需要VCOM-5.3V、AVDD-12.5V、VGL--7V、VGH-17V几组电压&#xff0c;所以要对初始的5V电源进行DC-DC电压变换&#xff0c;在这里我们用到了双电荷泵电路。 再此电路中VCC_5V为电源输入&#xff0c;E…

CentOS 7.9安装Tesla M4驱动、CUDA和cuDNN

正文共&#xff1a;1333 字 21 图&#xff0c;预估阅读时间&#xff1a;2 分钟 上次我们在Windows上尝试用Tesla M4配置深度学习环境&#xff08;TensorFlow识别GPU难道就这么难吗&#xff1f;还是我的GPU有问题&#xff1f;&#xff09;&#xff0c;但是失败了。考虑到Windows…

LeetCode662:二叉树最大宽度(二叉树非典型最大宽度,BFS层序遍历重编号)

题目 给你一棵二叉树的根节点 root &#xff0c;返回树的 最大宽度 。 树的 最大宽度 是所有层中最大的 宽度 。 每一层的 宽度 被定义为该层最左和最右的非空节点&#xff08;即&#xff0c;两个端点&#xff09;之间的长度。将这个二叉树视作与满二叉树结构相同&#xff0c;…

JAVA设计模式之备忘录模式详解

备忘录模式 1 备忘录模式介绍 备忘录模式提供了一种对象状态的撤销实现机制,当系统中某一个对象需要恢复到某一历史状态时可以使用备忘录模式进行设计. 很多软件都提供了撤销&#xff08;Undo&#xff09;操作&#xff0c;如 Word、记事本、Photoshop、IDEA等软件在编辑时按…

Stable Diffusion 模型下载:majicMIX fantasy 麦橘幻想

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。 文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十

【Web】Redis未授权访问漏洞学习笔记

目录 简介 靶机配置 Redis持久化 Redis动态修改配置 webshell 反弹shell Redis写入反弹shell任务 加固方案 简介 Redis&#xff08;Remote Dictionary Server 远程字典服务器&#xff09;是一个开源的内存数据库&#xff0c;也被称为数据结构服务器&#xff0c;它支持…

SCI论文作图规范

SCI论文作图规范包括以下几个方面&#xff1a; 一、图片格式 SCI论文通常接受的图片格式包括TIFF、EPS和PDF等。其中&#xff0c;TIFF格式是一种高质量的图像格式&#xff0c;适用于需要高分辨率和颜色准确性的图片&#xff1b;EPS格式是一种矢量图形格式&#xff0c;适用于需…

位运算+leetcode ( 2 )

题一&#xff1a;只出现一次的数字&#xff08;1&#xff09; 1.链接 136. 只出现一次的数字 - 力扣&#xff08;LeetCode&#xff09; 2.思想 借用位运算中异或操作符的特点&#xff0c;a^a0&#xff0c;0^aa先定义一个sum0就用一个循环来遍历这个数组&#xff0c;每次都进行…

Google Cloud 2024 年报告重点介绍了关键的网络威胁和防御

Google Cloud 的 2024 年威胁范围报告预测了云安全的主要风险&#xff0c;并提出了加强防御的策略。 该报告由 Google 安全专家撰写&#xff0c;为寻求预测和应对不断变化的网络安全威胁的云客户提供了宝贵的资源。 该报告强调&#xff0c;凭证滥用、加密货币挖矿、勒索软件和…

GO 的 Web 开发系列(五)—— 使用 Swagger 生成一份好看的接口文档

经过前面的文章&#xff0c;已经完成了 Web 系统基础功能的搭建&#xff0c;也实现了 API 接口、HTML 模板渲染等功能。接下来要做的就是使用 Swagger 工具&#xff0c;为这些 Api 接口生成一份好看的接口文档。 一、写注释 注释是 Swagger 的灵魂&#xff0c;Swagger 是通过…