10.13每日总结

软件设计                  石家庄铁道大学信息学院

 

实验7:单例模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解单例模式的动机,掌握该模式的结构;

2、能够利用单列模式解决实际问题

 

[实验任务一]:学号的单一

仿照课堂的身份证的例子,实现每个同学仅有一个学号这一问题。

实验要求:

1. 画出对应的类图;

 

2. 提交源代码;

StudentID :

package rjsj.no7;

 

public class StudentID {

    private static StudentID instance = null;

    private String id;

 

    private StudentID(){}

 

    public static StudentID getInstance() {

        if (instance == null) {

            System.out.println("学生信息注册,分配学号!");

            instance = new StudentID();

            instance.setStudentID("20193288");

        } else {

            System.out.println("学生信息已经被注册,获取其已经存在的学号!");

        }

        return instance;

    }

 

    private void setStudentID(String id) {

        this.id = id;

    }

 

    public String getStudentID() {

        return this.id;

    }

}

Client:

package rjsj.no7;

 

public class Client {

    public static void main(String a[]) {

        StudentID stu1,stu2;

        String id1,id2;

        System.out.println("第一次生成学生");

        stu1 = StudentID.getInstance();

 

        System.out.println("第二次生成学生");

        stu2 = StudentID.getInstance();

 

        System.out.println("两学生学号是否一致:" + (stu1==stu2));

 

        id1 = stu1.getStudentID();

        id2 = stu1.getStudentID();

        System.out.println("第一次产生的学号:" + id1);

        System.out.println("第二次产生的学号:" + id2);

        System.out.println("内容是否相等:" + id1.equalsIgnoreCase(id2));

        System.out.println("是否是相同对象:" + (id1==id2));

    }

}

 

3.注意编程规范。

 

posted @   听着DJ读童话  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示