吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2019|回复: 12
收起左侧

[Java 转载] Java自学记录Day22

  [复制链接]
JXNU1999python 发表于 2021-12-9 17:14

Java学习记录Day22

1、第一题:设计日期类,每个日期对象都可以描述年月日信息。

public class Datamessage01 {
    int day;
    int month;
    int year;
}

2、第二题:设计男人类,每个男人都有身份证号、姓名、性别、女人。设计女人类,每个女人都有身份证号、姓名、性别、男人。

public class Man02 {
    String sex="男";
    String idcard;
    String name="小明";
    Woman02 ming=new Woman02();
}

3、第三题:设计银行账户类,每个账户都有账号、密码、余额等信息。

public class BankAccount03 {
    String account;
    int password;
    double balance;

}

4、第四题:设计微信账号类,每个微信账号都有微信号、手机号、昵称等信息。

public class VxMessage {
    int vxid;
    int phoneNumber;
    String vxName;
}

5、第五题:定义丈夫类 Husband 和妻子类 Wife,

丈夫类的属性包括:身份证号,姓名,出生日期,妻子。

妻子类的属性包括:身份证号,姓名,出生日期,丈夫。

分别给这两个类提供构造方法(无参数构造方法和有参数构造方法都要提供),
编写测试程序,创建丈夫对象,然后再创建妻子对象,丈夫对象关联妻子对象,
妻子对象关联丈夫对象,要求能够输出这个“丈夫对象”的妻子的名字,
或者能够输出这个“妻子对象”的丈夫的名字。要求能够画出程序执行过程的内存图。
并且要求在程序中演示出空指针异常的效果。

在一个A对象中调用另一个B对象的属性,A对象的地址保存在变量apple中,B对象的地址保存在变量balance中,当把balance的值赋予null空值,之后apple调用另一个balance的属性将无法找到B对象的属性,此时出现空指针异常。
Wife的class文件

public class Wife {
    String idcard;
    String name;
    String dateBirth;
    String husband;
    Husband zhangfu;
    public Wife(){

    }
    public Wife(String name){
        System.out.println(name);
    }
    public String getName(){
        return name;
    }
}

Husband的class文件

public class Husband {
    String idcard;
    String name;
    String dateBirth;
    Wife qizi;
    public Husband(){

    }
    public Husband(String name){
        System.out.println(name);
    }
    public String getName(){
        return name;
    }

}

测试类class文件,调用为null值的变量,虽然这个变量可能之前存储着对象的地址,但是当值为null时将不再存储对象地址,若强行调用对象属性则会出现异常。

public class TestWife {
    public static void main(String[] args) {
        Husband ming=new Husband();
        ming.name="黄晓明";
        Wife li=new Wife();
        li.name="小丽";
        ming.qizi=li;
        System.out.println(ming.qizi.name);//黄晓明妻子的名字
        System.out.println(li.name);//小丽的名字
        li.zhangfu=ming;
        System.out.println(li.zhangfu.name);
        System.out.println(ming.name);
        Husband liang=new Husband();
        liang.name="刘亮";
    }

}

空指针异常

空指针异常

内存图

内存图

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
zr924 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

逝去的初夏c 发表于 2021-12-10 22:20
JXNU1999python 发表于 2021-12-10 11:09
不用学完数据结构吗?

要注重基础的话,数据结构还是有必要的。学完这些基本就能上手简单项目了,我意思是会用了再整
 楼主| JXNU1999python 发表于 2021-12-10 11:09
逝去的初夏c 发表于 2021-12-10 08:29
面向对象整完,直接 集合 JDBC 完事 springboot mybatis 整起来,先会用在探究原理

不用学完数据结构吗?
593365053 发表于 2021-12-9 17:54
While_Shark 发表于 2021-12-9 17:55
22天了,还没学到spring全家桶吗
 楼主| JXNU1999python 发表于 2021-12-9 18:41
While_Shark 发表于 2021-12-9 17:55
22天了,还没学到spring全家桶吗

巩固面向对象呢
shehuizhuyihao 发表于 2021-12-9 22:28
楼主什么时候找工作
wuaihuahua 发表于 2021-12-9 23:32
加油楼主
szf872591 发表于 2021-12-10 07:53
楼主加油
蝉心 发表于 2021-12-10 07:57
继承封装多态呢?
逝去的初夏c 发表于 2021-12-10 08:29
面向对象整完,直接 集合 JDBC 完事 springboot mybatis 整起来,先会用在探究原理
我今天是大佬 发表于 2021-12-10 09:02
22天了 够久了 向spring发起总攻
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 11:01

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表