(1)“public synchronized static java.sql.Connection getConnection(){省略}”我想问一下java.sql.Connection这个是什么意思,我知道这个位置出现的是返回类型,但是没有见过这种表示,能给我解释下吗,谢谢了。
(2)
public class Generator {
private static  Random random = null;
static{
random=new Random();
}


public Generator(){
}

public static String getEmailCode(){
long rnd = random.nextLong();
return Long.toHexString(rnd);
}
}
这段代码中有颜色的部分我不是太明白,主要是static加花括号这种表示方法是什么意思,谢谢各位了

解决方案 »

  1.   

    看我的回答刚刚回答的 说的十分仔细了LZ您看 下http://topic.csdn.net/u/20090528/19/ed87949a-3a44-4a70-aca6-58757035fb51.html
      

  2.   

    (1)不用import的时候直接指定是那个包下的哪个类
    (2)static加{}叫静态初始化块,在类被初始化的时候被执行
    具体类在什么时候被初始化可以看看Java语言规范 12.4 Initialization of Classes and Interfaces
      

  3.   

    问题1.Connection这个接口是java.sql包里面的,在没有import这个包但是有想用这个接口的时候,就需要指定完整的名字.就是这里的java.sql.Connection
    问题2:static{}是静态域,静态域里面的代码在类加载的时候就会执行.例如 用静态域可以写出一个不用main就可以输出的类.
    class Test
    {
        static
        {
            System.out.println("Hello");
            System.exit(0);
        }
    }
    然后你有别的类只要加载了Test类(Test t;)
    就会执行这段代码;
      

  4.   

    支持楼上说法!!!
    另补充:
    static语句块 在类加载的时候会比 static修饰变量先执行
      

  5.   

    第一题:不导入包的情况下,这样写等于把包导入
    第二题:static{}是在静态语句块,在这个类进行加载时就运行。