软件设计实验7:单例模式

实验7:单例模式

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

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

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

 

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

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

实验要求:

1. 画出对应的类图;

 

 

2. 提交源代码;

import java.util.ArrayList;

public class Test {
    public static void main(String[] args) {
        ArrayList<String> Arr=new ArrayList<>();
        StudentID A=StudentID.getOnly_id(Arr);
        StudentID B=StudentID.getOnly_id(Arr);
        Arr.add(A.getOnly_id(Arr).get());
        Arr.add(B.getOnly_id(Arr).get());
    }
}

 

import java.util.ArrayList;

public class StudentID {
    private static StudentID instante;
    private String only_id;

    public String get(){
        System.out.println(this.only_id);
        return this.only_id;
    }

    public void set(String a){
        this.only_id = a;
    }

    StudentID(){}
    public static StudentID getOnly_id(ArrayList<String> Arr){
        if(Arr.size() == 0){
            instante = new StudentID();
            instante.set("0");
        }
        else if(instante != null){
            System.out.println("已经申请过空间,不可以再申请");
        }
        return instante;
    }
}

 

3.注意编程规范。

 

posted @ 2023-11-03 20:05  STDU_DREAM  阅读(11)  评论(0编辑  收藏  举报