Java 封装+构造器+this 小测试
1 package com.bytezero.account;
2
3
4 public class Account
5 {
6 private int id; //账号
7 private double balance; //余额
8 private double annualInterestRate; //年利率
9
10
11 //构造器
12 public Account(int id, double balance, double annualInterestRate)
13 {
14
15 this.id = id;
16 this.balance = balance;
17 this.annualInterestRate = annualInterestRate;
18 }
19
20
21 // set get
22 public int getId()
23 {
24 return id;
25 }
26
27
28 public void setId(int id)
29 {
30 this.id = id;
31 }
32
33
34 public double getBalance()
35 {
36 return balance;
37 }
38
39
40 public void setBalance(double balance)
41 {
42 this.balance = balance;
43 }
44
45
46 public double getAnnualInterestRate()
47 {
48 return annualInterestRate;
49 }
50
51
52 public void setAnnualInterestRate(double annualInterestRate)
53 {
54 this.annualInterestRate = annualInterestRate;
55 }
56
57 //方法
58 public void withdraw(double amount) //取钱
59 {
60 if(balance < amount)
61 {
62 System.out.println("取款失败!!!!");
63 return;
64 }
65 balance -= amount;
66 System.out.println("成功取出:"+ amount);
67 }
68 public void dsposit(double amount) //存钱
69 {
70 if(amount > 0)
71 {
72 balance += amount;
73 System.out.println("成功存入"+amount);
74 }
75 }
76
77
78
79
80
81
82 }
1 package com.bytezero.account;
2
3 public class Customer
4 {
5 private String firstName;
6 private String laseName;
7 private Account account;
8
9
10
11 public Customer(String f,String l)
12 {
13 this.firstName = f;
14 this.laseName = l;
15 }
16
17
18
19 public Account getAccount() {
20 return account;
21 }
22
23
24
25 public void setAccount(Account account) {
26 this.account = account;
27 }
28
29
30
31 public String getFirstName() {
32 return firstName;
33 }
34
35
36
37 public String getLaseName() {
38 return laseName;
39 }
40
41
42
43
44
45
46
47
48 }
1 package com.bytezero.account;
2
3 /**
4 *
5 * @Description
6 * @author Bytezero·zhenglei! Email:420498246@qq.com
7 * @version
8 * @date 2021年9月15日下午9:55:22
9 * @ 小测试
10 *
11 */
12 public class CustomerTest
13 {
14 public static void main(String[] args)
15 {
16 Customer cust = new Customer("Jane","Smith");
17
18 Account acct = new Account(1000, 2000, 0.0123);
19
20 cust.setAccount(acct);
21
22 cust.getAccount().dsposit(100);
23 cust.getAccount().withdraw(960);
24 cust.getAccount().withdraw(2000);
25
26 System.out.println("客户叫:"+cust.getFirstName()+cust.getLaseName());
27 System.out.println("客户的id:"+cust.getAccount().getId());
28
29 }
30 }

Java 封装+构造器+this 小测试的更多相关文章
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
IT咨询顾问:一次吐血的项目救火 年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登 ...
- java 开发面试题小整理(一)
本篇文档将持续更新,有基础滴,也有深层次的,谢谢! 1.看下面的程序是否有问题,如果有问题,请指出并说明理由. * byte b1 = 3; * byte b2 = 4; * byte b3 = b1 ...
- 基于Udp通讯的Java局域网群聊小程序
/**基于Udp通讯的Java局域网群聊小程序 */package com.UdpDemo; import java.net.*; import java.awt.*; import java.awt ...
- Echarts 的 Java 封装类库 转自 https://my.oschina.net/flags/blog/316920
转自: https://my.oschina.net/flags/blog/316920 Echarts 的 Java 封装类库:http://www.oschina.net/p/echarts-ja ...
- java中如何使用Junit测试
java中如何使用Junit测试 一.总结 一句话总结:a.单元测试的测试代码在test文件夹下,和源码不在同一个文件夹下 b.测试的类方法都以test开头,后面接要测试的类或者方法的名字 1.JUn ...
- Java之——实现微信小程序加密数据解密算法
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/79450115 一.概述 微信推出了小程序,很多公司的客户端应用不仅具有了APP.H ...
- Java 封装 继承 多态
Java 继承 继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类. 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法 ...
- java全栈商业小程序开发
此次开发只为学习和巩固,第一次学习开发 一.开发前需要了解: 开发框架MVVM.痛点.开源工具.VUE前端框架.微信支付模块.uni-app前端框架.小程序申请.开发工具下载.编写测试小程序.小程序结 ...
- java 封装多态继承
java 面向对象思想 封装多态继承 面向过程与面向对象 编程分为面向对象编程和面向对象编程,汇编,C语言是面向过程写代码,C++/Java是面向对象 其实面向过程和面向对象在本质都是一样写代码,然后 ...
- java封装基础详解
java封装基础详解 java的封装性即是信息隐藏,把对象的属性和行为结合成一个相同的独立单体,并尽可能地隐藏对象的内部细节. 封装的特性是对属性来讲的. 封装的目标就是要实现软件部件的"高 ...
随机推荐
- Qt连接MySQL的问题解决方法
Qt5在连接MySQL数据库时会出现一些问题,本文介绍两种最常见的问题,以及其相对简单的解决办法. Qt5数据库支持列表里没有MySQL 输入以下代码查看支持的数据库类型 //打印支持的数据库类型 q ...
- 消息队列RabbitMQ教程
RabbitMQ教程 翻译自RabbitMQ Tutorials. 0. 准备 前期准备 1. Hello World 最简入门教程 2. 工作队列 竞争消费者模式 3. 发布/订阅 同时发送消息给多 ...
- Pdfium.Net.Free 一个免费的Pdfium的 .net包装器--打开大文件处理
项目地址: Pdfium.Net:https://github.com/1000374/Pdfium.Net PdfiumViewer:https://github.com/1000374/Pdfiu ...
- Vue3学习笔记 —— 状态管理、Vuex、Pinia (未完结)
优秀文章分享:vue中使用vuex(超详细) - 掘金 (juejin.cn) 一.状态管理 1.1.什么是状态管理? 理论上来说,每一个 Vue 组件实例都已经在"管理"它自己的 ...
- 【Linux】常用基本指令大汇总系列(篇一)【超详细的图解保姆教程】
常用基本指令大汇总系列(篇一) 大家好,欢迎大家来到我的博客.从今天开始,博主就要开启一个全新的系列了!Linux操作系统常用基本指令汇总系列,当大家按顺序学完这个系列,在Linux上编写基本的C语言 ...
- CentOS7下的防火墙配置整理
CentOS7下的防火墙配置整理 一.firewalld的基本使用 [root@localhost jack]# systemctl start firewalld # 启动防火墙 [root@loc ...
- offline 2 online | 重要性采样,把 offline + online 数据化为 on-policy samples
论文标题:Offline-to-Online Reinforcement Learning via Balanced Replay and Pessimistic Q-Ensemble CoRL 20 ...
- Kubernetes 漫游:Controller Manager
Controller Manager Controller Manager 是控制平面的一个重要组件,负责维护 Kubernetes 集群的整体状态. 流程: 在集群中 Controller Mana ...
- CF1853
你谷的加题速度实在太慢了 被 CF 的题目薄纱 A 可以选任意次 \(i\in [1,n]\),使 \(a[1\sim i]++,a[i+1\sim n]--\).求最少操作次数使得原数列变成非从小到 ...
- NC51222 Strategic game
题目链接 题目 题目描述 Bob enjoys playing computer games, especially strategic games, but sometimes he cannot ...