• Single


    35.编程题: 编写一个Singleton类,并演示如何使用。
     
    答:Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。一般Singleton模式通常有几种种形式:
    第一种形式:定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。 
    public class Singleton {
        private Singleton(){} //在自己内部定义自己一个实例,是不是很奇怪? 
    //注意这是private 只供内部调用 
    private static Singleton instance = new Singleton(); 
    //这里提供了一个供外部访问本class的静态方法,可以直接访问 
    public static Singleton getInstance() { return instance; } 
    第二种形式: 
    public class Singleton { 
    private static Singleton instance = null;
    public static synchronized Singleton getInstance(){ 
    //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次 
    //使用时生成实例,提高了效率!
    if(instance==null)
    instance = new Singleton();
        return instance;
    其他形式:定义一个类,它的构造函数为private的,所有方法为static的。一般认为第一种形式要更加安全些
    第三十三 Hashtable和HashMap Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现 HashMap允许将null作为一个entry的key或者value,而Hashtable不允许 还有就是,HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为 contains方法容易让人引起误解。 最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时, 不需要自己为它的方法实现同步,而HashMap就必须为之提供外同步。 Hashtable和HashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。
    总结很重要哦 方法得当,坚持会有奇迹哦
  • 相关阅读:
    Leetcode 191.位1的个数 By Python
    反向传播的推导
    Leetcode 268.缺失数字 By Python
    Leetcode 326.3的幂 By Python
    Leetcode 28.实现strStr() By Python
    Leetcode 7.反转整数 By Python
    Leetcode 125.验证回文串 By Python
    Leetcode 1.两数之和 By Python
    Hdoj 1008.Elevator 题解
    TZOJ 车辆拥挤相互往里走
  • 原文地址:https://www.cnblogs.com/sunyuhuan/p/7217486.html
Copyright © 2020-2023  润新知