java中只能有一个实例的类的创建
Java中,如果我们创建一个类,想让这个类只有一个对象,那么我们可以
1:把该类的构造方法设计为private
2:在该类中定义一个static方法,在该方法中创建对象
package test; /*
* 有时候我们希望一个类在任何时候都只有一个实例,这时候可以把该类设计为单例模式。
* 要将一个类设计为单例模式,需要:
* 1:把该类的构造方法的访问修饰符生命为private
* 2:然后在该类中定义一个static方法,在该方法中创建类的对象
*
* */
public class Singleton {
private static final Singleton INSTANCE = new Singleton(); //私有成员
private int a = 0;//私有成员 private Singleton(){}//构造方法
public static synchronized Singleton getInstance(){//类的方法
return INSTANCE;
}
public void methodA(){ //成员方法
a++;
System.out.println("a = "+a);
}
public static void main(String[] args){ //主方法
Singleton sg1 = Singleton.getInstance();
Singleton sg2 = Singleton.getInstance();
sg1.methodA();
sg2.methodA();
System.out.println(sg1 == sg2);
} }
java中只能有一个实例的类的创建的更多相关文章
- Spring Boot中只能有一个WebMvcConfigurationSupport配置类
首先将结论写文章的最前面,一个项目中只能有一个继承WebMvcConfigurationSupport的@Configuration类(使用@EnableMvc效果相同),如果存在多个这样的类,只有一 ...
- Java中在实例化一个类时,这个类中没有初始值的int类型成员变量i,i的值是不是0?
java中有两种类型一种是数值性,另一种是类变量数值性变量的初始值为0,类变量的初始化为null没做初始化成员变量int性变量是0, 在java中有这么一条规则,声明在方法中的变量在使用时必须要初始化 ...
- Java程序只运行一个实例[转]
如果希望你的Java程序只能存在一个实例,可以参考下面的用法. 原文链接:http://blog.csdn.net/yaerfeng/article/details/7264729 Java没有提供这 ...
- 浅谈为什么一个java源文件中只能有一个public类?
声明,本篇文章为转载 转载 http://blog.csdn.net/bareheadzzq/article/details/6562211 最近在一个java文件中实现了几个类,其中一个声明为pub ...
- 为什么一个java源文件中只能有一个public类
问题:一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 答案:可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致.一个文件 ...
- Oracle 远程访问配置 在 Windows Forms 和 WPF 应用中使用 FontAwesome 图标 C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素” C#[Win32&WinCE&WM]应用程序只能运行一个实例:MutexHelper Decimal类型截取保留N位小数向上取, Decimal类型截取保留N位小数并且不进行四舍五入操作
Oracle 远程访问配置 服务端配置 如果不想自己写,可以通过 Net Manager 来配置. 以下配置文件中的 localhost 改为 ip 地址,否则,远程不能访问. 1.网络监听配置 ...
- Java中直接输出一个类的对象
例如 package com.atguigu.java.fanshe; public class Person { String name; private int age; public Strin ...
- Java中如何查看一个类依赖的包
Java中如何查看一个类依赖的包 如图, 我如何知道JSONArray是依赖的哪一个包呢,这里有两个json-lib包? 测试语句: public static void main(Strin ...
- Java 中静态变量和实例变量区别
Java 中静态变量和实例变量区别 静态变量属于类,该类不生产对象,通过类名就可以调用静态变量. 实例变量属于该类的对象,必须产生该类对象,才能调用实例变量. 在程序运行时的区别: 实例变量属于某个对 ...
随机推荐
- clear:both后margin-top不起作用
如: <div style="float:left;">float:left</div> <div style="clear:both;ma ...
- 转: mysql create view 创建视图
以下的文章主要是对MySQL视图的描述,其中包括MySQ视图L概述,以及创建MySQL视图-create view与修改MySQL视图--alter view等相关内容的具体描述,以下就是文章的具体内 ...
- git 导入代码到已有仓库
git remote add origin https://----------- git push -u origin master //这两行将该目录下的文件推送到远端(origin)上的 &qu ...
- 1396 - Most Distant Point from the Sea
点击打开链接 题意: 按顺序给出一小岛(多边形)的点 求岛上某点离海最远的距离 解法: 不断的收缩多边形(求半平面交) 直到无限小 二分收缩的距离即可 如图 //大白p263 #include < ...
- 恢复sudo的权限的命令
出错的原因:不小心给了/etc/的所有文件的777属性,出现了sudo 的错误. 1.pkexec chmod 0440 /etc/sudoers 2.pkexec chmod 0440 /etc/s ...
- ssh的学习
快毕业了.临走前帮导师搭建了gerrit,git服务器,其中涉及ssh的知识,就总结了下.希望对大家有帮助 一.前言(ssh出世的原因) 万物有因就有果,既然ssh存在,就必然有它存在的理由! 许多网 ...
- nhibernate 更新 SqlDateTime 溢出问题
最近在用nhibernate,更新实体 时遇到一个SqlDateTime 溢出问题 费力调了N久,开始以为是实体的日期格式属性未赋值,但是调试发现哪怕实体对应的日期类型属性赋值了,也会报同样的错误. ...
- Android 之窗口小部件高级篇--App Widget 之 RemoteViews - 跨到对岸去
在之前的一篇博文( Android 之窗口小部件详解--App Widge t)中,已经介绍了App Widget的基本用法和简单实例.这篇主要讲解 App Widget 的高级内容,即通过 Remo ...
- Android实现 ScrollView + ListView无滚动条滚动
Android实现 ScrollView+ListView无滚动条滚动,即ListView的数据会全部显示完,但Listview无滚动条. 核心代码如下: 1. NoScrollListView.ja ...
- nbtstat 查询IP地址对应的计算机名称
使用命令nbtstat -a ipaddress即可,例如:nbtstat -a 192.168.1.2.