面向对象(综合练习)--答案简析

文章介绍了Java中的类结构,如Husband和Wife类的属性设置和获取,以及如何通过实例化对象和调用方法来展示对象间的关联。接着展示了如何创建Account类,包括其属性和操作方法,如取钱和存款。
摘要由CSDN通过智能技术生成

//private Husband husband;

输出时,注意输出方法时(引用数据的格式)格式为,变量名.get方法(例子:wife.getName())

public class Husband {

private String name;

private int age;

private Wife wife;//类名+变量名

public Husband() {

}

public Husband(String name, int age, Wife wife) {

this.name = name;

this.age = age;

this.wife = wife;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public Wife getWife() {//注意返回类型

return wife;

}

public void setWife(Wife wife) {//注意形参

this.wife = wife;

}

public void getInfo() {

System.out.println(“丈夫的姓名为:” + name + “,年龄为:” + age + “,妻子属性,妻子姓名:” + wife.getName() + “,年龄:” + wife.getAge());

}

}

public class Wife {

private String name;

private int age;

private Husband husband;//类名+变量名

public Wife(){

}

public Wife(String name,int age,Husband husband){

this.name=name;

this.age=age;

this.husband=husband;

}

public String getName(){

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public Husband getHusband() {//注意返回类型

return husband;

}

public void setHusband(Husband husband) {

this.husband= husband;

}

public void getInfo(){//调用的属性,注意引用方法

System.out.println(“妻子的姓名为:”+name+“,年龄为:”+age+“,丈夫的属性,丈夫姓名:”+husband.getName()+“,年龄:”+husband.getAge() );

}

}

public class HusbandWifeTest {

public static void main(String[] args) {

Husband husband=new Husband(“张”,30,null);//未对换属性,所以此时为空值

Wife wife=new Wife(“李”,25,null);//未对换属性,所以此时为空值

husband.setWife(wife);//调用属性

wife.setHusband(husband);//调用属性

husband.getInfo();

wife.getInfo();

}

}

/*

2.定义银行账户类Account,有属性:卡号cid,余额balance,所属用户Customer

银行账户类Account有方法:

(1)getInfo(),返回String类型,返回卡的详细信息

(2)取钱方法withdraw(),参数自行设计,如果取钱成功返回true,失败返回false

(3)存钱方法save(),参数自行设计,如果存钱成功返回true,失败返回false

其中Customer类有姓名、身份证号、联系电话、家庭地址等属性

Customer类有方法say(),返回String类型,返回他的个人信息。

在测试类Bank中创建银行账户类对象和用户类对象,并设置信息,与显示信息

*/

//同样注意,引用时的要求。

public class Account {

private String cid;

private int balance;

private Customer customer;//类名+变量名(引用的格式)

public Account(){

}

public Account(String cid,int balance,Customer customer){

this.cid=cid;

this.balance=balance;

this.customer=customer;

}

public String getCid(){

return cid;

}

public void setCid(String cid) {

this.cid = cid;

}

public int getBalance() {

return balance;

}

public void setBalance(int balance) {

this.balance = balance;

}

public Customer getCustomer() {//返回的类型也要用才开始定义时的类型,不管是否为类名

return customer;

}

public void setCustomer(Customer customer) {

this.customer = customer;

}

public String getInfo(){//返回类型直接给答案,最后return直接返回,等待测试类方法调用

String info=“卡号cid:”+cid+“,余额balance:”+balance+“,用户customer:”+customer.getName();

return info;

}

public boolean withdraw(int out_balance){//定义的取钱办法,形参直接定义一个新的变量

if (out_balance<=balance){

balance -= out_balance;

return true;

}else {

return false;

}

}

public boolean save(int in_balance){//定义的存钱办法,形参直接定义新变量

if(in_balance>=0){

balance += in_balance;

return true;

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

分享

1、算法大厂——字节跳动面试题

2、2000页互联网Java面试题大全

3、高阶必备,算法学习

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
/images/e5c14a7895254671a72faed303032d36.jpg" alt=“img” style=“zoom: 33%;” />

分享

1、算法大厂——字节跳动面试题

[外链图片转存中…(img-Z7oZ6FiY-1712528976615)]

2、2000页互联网Java面试题大全

[外链图片转存中…(img-IbDykk82-1712528976615)]

3、高阶必备,算法学习

[外链图片转存中…(img-fo1srA3D-1712528976616)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值