【JAVA】实现只有一个窗口弹出的底层逻辑——单身模式

目录

背景说明

代码实现

 手写笔记


背景说明

有的时候,当你点击一个选项时会弹出来多个窗口,而有的时候只会弹出一个

实际上,弹出多个窗口就是创建了多个相同的对象,而只弹出一个就是我们今天即将分享的单身模式——一个类只产生一个对象

代码实现

class Singleton{private Singleton(){}private static Singleton instance;public static Singleton GetInstance(){if(instance==null){Singleton.instance = new Singleton();}return instance;}
}
public class Test {public static void main(String[] args){Singleton S1 = Singleton.GetInstance();Singleton S2 = Singleton.GetInstance();if(S1.equals(S2)){System.out.println("两对象相同,成功实现!");}else{System.out.println("两对象不同,大失败!!");}}}

 手写笔记

今天的分享到这里就结束啦~~希望能帮到您 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/1609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python】使用Python计算简单数值积分

题外话,Python语言命名的来源:(见下图)Monty Python巨蟒剧团 1、积分题目(3) 2、解析解答 3、Python计算代码 import math import scipy.integrate as integrate# 积分区间 # x_min 0.0 # 1 # x_min …

润石科技(RUNIC)汽车电子应用方案和物料选型

一、润石科技(RUNIC)简介 江苏润石科技有限公司是一家专注于高性能、高品质模拟/混合信号集成电路研发和销售的高科技半导体设计公司。公司主要产品线分为两类:信号链和电源管理,其中信号链包含运算放大器、比较器、模拟开关、数…

PotCSS 概述

PotCSS 并不是一个广泛认知的术语或者一个特定的技术,至少在提供的搜索结果中没有直接提到 PotCSS 的相关信息。因此,无法提供关于 PotCSS 的背景渊源介绍。 然而,如果你指的是 PostCSS,那么可以提供一些关于它的背景信息。PostC…

王者荣耀防御塔如何开发!新手小白做游戏开发采坑经过。phaser前端游戏框架

好嘞,游戏开发框架是js 开发的网页小游戏! phaser这个框架。好我们先上图! 目前大概是这么一个样子。 然后防御塔功能呢。简单的说就是当人物进去的时候打他。人物扣血。 我们的小人物是这样的代码 遇到的问题如下; 小白刚开始…

C++从入门到精通——模板

模板 前言一、泛型编程二、函数模板函数模板的概念函数模板格式示例 函数模板的原理函数模板的实例化隐式实例化显式实例化示例 auto做模板函数的返回值模板参数的匹配原则总结 三、类模板类模板的定义格式类模板的实例化 前言 C模板是C语言中的一种泛型编程技术,可…

centos 7.9 安装 ftp 传输文件

ftp server 端 sudo yum install vsftpd ftp其中 vsftpd 为 ftp server 端,ftp 包含 ftp 这个客户端命令。 # sudo rpm -ql vsftpd/etc/logrotate.d/vsftpd /etc/pam.d/vsftpd /etc/vsftpd /etc/vsftpd/ftpusers /etc/vsftpd/user_list /etc/vsftpd/vsftpd.conf /…

若依学习记录

1.克隆我的gitee项目地址 https://gitee.com/xuge520/ruo-yi-vue-master.git 2.前期工作(注意:我的Mysql使用的是3308端口,数据库名是ry-vue) 使用若依框架RuoYi前后端分离版(超详细步骤)-CSDN博客 3.使用若依代码生成 若依代…

服务器渲染技术(JSPELJSTL)

目录 前言 一.JSP 1.基本介绍 3.page指令(常用) 4.JSP三种常用脚本 4.1 声明脚本 <%! code %> 4.2 表达式脚本 <% code %> 4.3 代码脚本 <% code %> 4.4 注释 <%-- 注释 --%> 5. JSP 内置对象 5.1 基本介绍 5.2 九个内置对象 6.JSP域对象 二…

Ubuntu20.04 ISAAC SIM仿真下载使用流程

机器&#xff1a;华硕天选X2024 显卡&#xff1a;4060Ti ubuntu20.04 安装显卡驱动版本&#xff1a;525.85.05 参考&#xff1a; What Is Isaac Sim? — Omniverse IsaacSim latest documentationIsaac sim Cache 2023.2.3 did not work_isaac cache stopped-CSDN博客 Is…

shell 脚本基础练习

编写脚本 sysinfo.sh&#xff0c;显示当前主机系统信息&#xff0c;包括:主机名&#xff0c;IPv4地址&#xff0c;操作系统版本&#xff0c;内核版 本&#xff0c;CPU型号&#xff0c;内存大小&#xff0c;硬盘大小 tr命令用于替换或删除字符。 cut命令用于从文件或标准输入…

linux 安装openjdk-1.8

安装命令 yum install java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64查看安装路径 find / -name java 默认的安装路径 /usr/lib/jvm 查看到jre 以及java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64 配置环境变量 vim /etc/profile 添加的内容 export JAVA_HOME/usr/li…

每日一题:地下城游戏

恶魔们抓住了公主并将她关在了地下城 dungeon 的 右下角 。地下城是由 m x n 个房间组成的二维网格。我们英勇的骑士最初被安置在 左上角 的房间里&#xff0c;他必须穿过地下城并通过对抗恶魔来拯救公主。 骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻降至 0…

基于非线性控制策略的电力电子电路——DC-DC电路的3种滑模控制器【MATLAB/simulink】

第一种&#xff0c;滞环滑模控制器Buck电路 在滑模控制系统中&#xff0c;采用滞环技术&#xff0c;直接将切换函数转换成开关控制信号&#xff0c;滞环技术被看做一种降低系统结构的切换频率的调制方法&#xff0c;业界也把基于滞环滑模技术实现的滑模控制称为直接滑模控制技…

分类网络总结

欢迎大家订阅我的专栏一起学习共同进步&#xff0c;主要针对25届应届毕业生 祝大家早日拿到offer&#xff01; lets go http://t.csdnimg.cn/dfcH3 目录 4. 经典分类网络与发展 4.1 AlexNet 4.2 VGGNet 4.3 GoogLeNet Inception 4.4 ResNet 4.5 DenseNet 4.6 MobileN…

Python基础04-操作系统中的文件与目录操作

在与操作系统交互时&#xff0c;我们经常需要执行文件和目录的操作。Python提供了丰富的库来帮助我们完成这些任务。以下是一些常见的操作&#xff0c;以及如何使用Python代码来实现它们。 1. 导航文件路径 在不同的操作系统中&#xff0c;文件路径的格式可能不同。Python的o…

提取出图像的感兴趣区域

这是我们的原图像 将图像的数值统计后进行条形图展示 import matplotlib.pyplot as plt from PIL import Image import numpy as np# 图像路径 image_path r"D:\My Data\Figure\OIP.jpg"# 打开图像 image Image.open(image_path)# 将图像转换为numpy数组 image_ar…

关于实验报告添加题注为0以及页面断层的解决办法

1.事情起源于最近在写实验报告和课设说明书时出现图的题注是图0-1等不遵循设置的章节标号&#xff0c;于是我在查询和个人尝试后发现必须设置多级编号并且自定义设置对应的样式为标题几 另外注意设置后必须题注也要设置对应的样式&#xff0c;否则还是0-1&#xff0c;不用编辑域…

鸿蒙应用开发之Web组件4

前面学习了Web组件加载本地的文件数据,这样很方便不需要网络的界面显示,或者提示类的界面,比如软件使用说明书,又比如软件使用协议,又或者固定显示的长文本数据。如果有多个文件,也可以通过按钮来切换不同的文件显示。 如果文本比较短小的HTML数据,放到文件里,再通过文…

全球30米100%水陆覆盖高程

数据是GIS的血液。 熟悉水经注的朋友都应该知道&#xff0c;我们可以为大家提供全球30米和全球12.5米的高程数据&#xff0c;但这两种数据都无法达到全球覆盖。 你可以从《40TB全球12.5米高程DEM原始数据》与《700G全球30米高程DEM原始数据》等文中了解这两种数据的详细说明。…

git简介及安装

Git | Git简介与安装 文章目录 Git | Git简介与安装一、Git简介二、Git安装Linux-centosLinux-ubuntu 一、Git简介 存在需求&#xff1a;对于一个文档&#xff0c;由于编写思路或者当前文档丢失&#xff0c;可能存在想要历史版本的需求&#xff0c;并且需要知道每个版本都修改了…