差不多,其实实例这个词没有什么。你想想,class可以称作对象Object,那么它实例化不就是从抽象的有各种变量、方法到存在值和调用么?

解决方案 »

  1.   

    那位高手能具体说一下java中的“引用”?
      

  2.   

    //那位高手能具体说一下java中的“引用”?我不是高手,引用书上的话吧,每种编程语言都有自己的数据处理方式。有些时候,程序员必须时刻留意准备处理的是什么类型。您曾利用
    一些特殊语法直接操作过对象,或处理过一些间接表示的对象吗(C 或C++里的指针)?
    所有这些在Java 里都得到了简化,任何东西都可看作对象。因此,我们可采用一种统一的语法,任何地方均
    可照搬不误。但要注意,尽管将一切都“看作”对象,但操纵的标识符实际是指向一个对象的“句柄”
    (Handle)。在其他Java 参考书里,还可看到有的人将其称作一个“引用”,甚至一个“指针”。可将这一
    情形想象成用遥控板(句柄)操纵电视机(对象)。只要握住这个遥控板,就相当于掌握了与电视机连接的
    通道。但一旦需要“换频道”或者“关小声音”,我们实际操纵的是遥控板(句柄),再由遥控板自己操纵
    电视机(对象)。如果要在房间里四处走走,并想保持对电视机的控制,那么手上拿着的是遥控板,而非电
    视机。
    此外,即使没有电视机,遥控板亦可独立存在。也就是说,只是由于拥有一个句柄,并不表示必须有一个对
    象同它连接。所以如果想容纳一个词或句子,可创建一个String 句柄:
    String s;
    但这里创建的只是句柄,并不是对象。若此时向s 发送一条消息,就会获得一个错误(运行期)。这是由于
    s 实际并未与任何东西连接(即“没有电视机”)。因此,一种更安全的做法是:创建一个句柄时,记住无
    论如何都进行初始化:
    String s = "asdf";
      

  3.   

    有一个更好的比喻是:class 是饼干(甜饼)制造机器,而 通过引用把它放到磨具里(指向),接着要实例化,就是制造过程,出来的东西就是饼干(甜饼),也就是对象。
    这个比喻好像不是很恰当.
    比如定义一个类
    class Machine {
    }
    那么在实例化的时候
    class A{
    Machine m = new Machine();
    }
    你可以说m是甜饼吗?
      

  4.   

    接着上面的.
    我们可以理解在图纸上的饼干机模型是一个类, 说明了这个饼干机的构造, 使用方法等等.
    而真正在工厂里的饼干机则是饼干机模型的一个实例, 这样的实例可以有n多个. 至于饼干, 那是另外一个相关的类.
    而引用在Java里面基本已经不谈了, 因为Java没有什么传置, 传值的问题. 对象实例都是传置的, 也就是传递一个对象的引用, 相当于指针吧. 基本类型都是传值的.
      

  5.   

    那么在实例化的时候
    class A{
    Machine m = new Machine();
    }这是在声明,不是在实例化
      

  6.   

    比如我们定义为
    abstract class Machine{.....}
    再有
    class firstMachine extends Machine{
    public fistMachine(String n, double s){
    name=n;
    speed=s;}
    ......
    private String name;
    private double speed;}
    这时候我们再
    class A{
    Machine m = new Machine(2);
    Machine[0]=new firstMachine("M3902",50);//这里才是实例化了 
    }
      

  7.   

    ---------------------------
    Machine m = new Machine(2);
    ------------------------------
    你写的啥奥?
    abstract class 也能new????????????????????
      

  8.   

    ////你把这行也称为new class????????????
    class AAA{
        public static void main(String[] args){
           BBB[] b= new BBB[3]; ////你把这行也称为new class????????????
           for(int i=0;i<3;i++){
             b[i]=new BBB();
             System.out.println("第"+i+"个");
             b[i].sayhello();
           }
        }
    }
    class BBB{
        void sayhello(){System.out.println("hhhhh");}
    }
      

  9.   

    class A{
    Machine[] m = new Machine[2];  //定义
    Machine[0]=new firstMachine("M3902",50);//这里才是实例化了
    }
      

  10.   

    to bradwoo8621() :
    而引用在Java里面基本已经不谈了, 因为Java没有什么传置, 传值的问题. 对象实例都是传置的, 也就是传递一个对象的引用, 相当于指针吧. 基本类型都是传值的.
    ???
    对象实例都是传值的,是传递一个对象引用还是传递一个对象引用的拷贝?
      

  11.   

    赞成 sylmoon(砺筠) 对实例化的看法!
      

  12.   

    class A{
    A(){
    System.out.println("A constructor()");
    }
    }
    class Test{
    public static void main(String[] args){
    A a,b;//声明两个句柄
    a=new A();//指向一个对象
    b=new A();//指向另外一个对象
    System.out.println(a);
    System.out.println(b);
    System.out.println(a.equals(b));
    System.out.println();
    b=a;//复制句柄a,赋给句柄b,同时指向第一个对象.第二个对象将丢失句柄,不久后被垃圾收集器清除
    System.out.println(a);
    System.out.println(b);
    System.out.println(a.equals(b));
    }

    }