黑马程序员:Java基础总结
多重For循环的解决数学问题
单例设计模式:
1、解决问题:
保证一个类在内存中的对象的唯一性
如软件的配置文件,可以使用单例,保证配置文件只有一份。
2、如何保证对象唯一:
将构造函数私有化,避免外界程序创建对象
类内部创建对象,自身进行实例化,从而调用功能(引用必须为私有静态的。)
为外界能访问此对象,将对象的引用通过公共访问方法暴露给外界(方法必须是静态的,才能被类调用)
3、体现:
饿汉式
class Single{
private Single(){
//…..
}
private static Single single = new Single();
public static Single getSingle(){
return single;
}
}
懒汉式:延迟加载
class Sinlge{
private Single{
//….
}
private static Single single = null;
public static Single getSingle(){
if(single == null){
synchronized(Single.class){
if(single == null){
single = new Single();
}
}
}
return single;
}
}
4、应用
java.lang.Runtime
API中说法:每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。可以通过getRuntime 方法获取当前运行时。
个人理解:Runtime类封装了应用程序的运行环境,每个java程序都有自己的一个Runtime类的实例,但是我们不能够创建这个Runtime的实例对象,这是java程序启动时,自己就存在的。但是我们可以通过获取这个Runtime对象,从而控制java程序的状态。
比如说,我们可以通过获得Runtime实例对象,启动一个程序(如扫雷):