如果你想整个应用程序只有一个你创建的某个类的对象时,可以采用如下的技巧

在你创建的类中,将构造函数的属性设置为私有,然后再定义一个静态方法给外部使用,也就是单例模式,具体代码如下:

public class SQliteDataBaseConfig {  
private static final String AA_DATABASE_NAME="my_aa_database_name";  
private static final int AA_DATABASE_VERSION=1;  
private static SQliteDataBaseConfig sQliteDataBaseConfig_instance;  
private SQliteDataBaseConfig(){  
}  
public static SQliteDataBaseConfig getsQliteDataBaseConfig_instance(){  
    if (sQliteDataBaseConfig_instance==null){  
        sQliteDataBaseConfig_instance=new SQliteDataBaseConfig();  
    }  
    return sQliteDataBaseConfig_instance;  
}   
}   

这里需要说一下:由于这个类的构造函数是私有的,也就意味着这个类不能被继承。
当然这里提的这种形式的单例模式是属于懒汉形式的,但是这样是线程不安全的,那么什么是线程不安全呢?学过操作系统的都知道,一个进程可以包含多个线程,假设你的代码所在的进程有多个线程,那么这多个线程都可以访问这段代码,当它们同时访问这段代码,如果每次运行的结果和单线程运行的结果相同,并且其他的变量的值也和预期的是一样的,那么就是线程安全的。想深入了解单例模式的人推荐看一下这篇博客单例模式,写的真的很好。

若你想在某一个类的父类构造函数中,用一个类的对象作为参数,那么这个类的对象要声明为static

 public class MySqliteOpenHelper extends SQLiteOpenHelper{  
private  static  SQliteDataBaseConfig sQliteDataBaseConfig;  
private MySqliteOpenHelper(Context context){  
    super(context,sQliteDataBaseConfig.getAADatabaseName(),null,sQliteDataBaseConfig.getAADatabaseVersion());  
}  
}  

这也很好理解,因为当这个类构造时,作为参数的类对象可能还没实例化,所以需要将其声明为static。