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的封装性即是信息隐藏,把对象的属性和行为结合成一个相同的独立单体,并尽可能地隐藏对象的内部细节. 封装的特性是对属性来讲的. 封装的目标就是要实现软件部件的"高 ...
随机推荐
- 微信小程序-页面生命周期
官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/page-life-cycle.html
- 【1】Pycharm 主题设置推荐Material Theme UI以及编辑环境配置(字体大小和颜色)
相关文章: [1]Pycharm 主题设置推荐Material Theme UI以及编辑环境配置(字体大小和颜色) [2]Pycharm插件推荐,超级实用!每个小trick都可以快速提升变成效率! [ ...
- 19.9 Boost Asio 同步字典传输
这里所代指的字典是Python中的样子,本节内容我们将通过使用Boost中自带的Tokenizer分词器实现对特定字符串的切割功能,使用Boost Tokenizer,可以通过构建一个分隔符或正则表达 ...
- LyScript 实现Hook改写MessageBox
LyScript 可实现自定义汇编指令的替换功能,用户可以自行编写一段汇编指令,将程序中特定的通用函数进行功能改写与转向操作,此功能原理是简单的Hook操作. 插件地址:https://github. ...
- hydra 密码爆破工具入门
Hydra(九头蛇海德拉)是希腊神话之中的一个怪兽,以九个头闻名于世,在Kali中hydray(hai der rua) 是默认被安装的,该工具是密码破解的老司机,可以破解各种登录密码,非常怪兽,但是 ...
- 28图图解Raft协议,so easy~~
大家好,我是三友~~ 在之前写的<万字+20张图探秘Nacos注册中心核心实现原理> 这篇文章中我留了一个彩蛋 当文章点赞量突破28个,就单独写一篇关于Raft协议的文章 既然现在文章点赞 ...
- 一图看懂iPhone 15系列:15/Plus/Pro/Pro Max有啥区别?详细配置对比
距离iPhone 15系列发布只剩下2天(北京时间9月13日凌晨1点),即将推出预计分别是iPhone 15.iPhone 15 Plus,以及Pro系列的iPhone 15 Pro以及iPhone ...
- Asp.net平台常用的框架整理
分布式缓存框架: Microsoft Velocity:微软自家分布式缓存服务框架. Memcahed:一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度. Redis:是一个高性能的K ...
- CF351D Jeff and Removing Periods 题解
题目链接:CF 或者 洛谷 挺有意思的题,一开始看到了 \(start+k\times step\),以为是根号分治方向的题,结果发现这题还给了一个"重排"操作玩玩.所以这题其实算 ...
- 5.字典--《Python编程:从入门到实践》
5.1 字典 在 Python 中,字典是一系列键-值对.键不能重复,否则对应的值是后面一个. 5.1.1 键-值队的添加与修改 alien_0 = {'color': 'green', 'poi ...