如果我没记错的话,这就是java中的基本类型对象化的问题所产生的让初学者迷惑的两个东西。这和Integer和int的区别和联系是相同的。
简而言之,前者可以当作普通的对象来使用,后者不可以。
其内涵其实都是一样的。

解决方案 »

  1.   

    Long是一个类,long是一个类型
    类似于Integer,int
      

  2.   

    long 是基本变量类型
    Long 是 long 的封装类
      

  3.   

    Long是一个类,所以它也继承了Object。long 是一个基本类型。
    long temp = 100;  // 直接定义变量。
    Long obj = new Long(temp); // 通过new生成对象。 假设有一个这样的方法 
    public void printObj(Object obj){
      .....
    }那么 printObj(temp) 将出错, printObj(obj) 是正确的。类似的还有 Integer int, Double double,Char char, Byte byte, Float float .....因为在Java中任何东西都是类。