抽象类不能实例化new的时候才会实例化一般用来继承

解决方案 »

  1.   

    首先抽象类不能实例化是因为它不代表那一个具体的事物而是指的那一类如:我申明一个抽象类车.很显然你并不能把车这个类来创造某个具体的物体来,你只有派生一个汽车你才可以生产出来.可是你这样 车 che1=new 汽车();显然是可以的,因为任何汽车,自行车,摩托车等都可以称为车.
      

  2.   

    这里在给个例子:
    abstract class 车{}public class 汽车:车{}车  车1;//可以申明但不可以具体生产出任何产品车1=new 汽车();//这样可以因为汽车也是一种车,所以可以用车来指代汽车
      

  3.   

    当然也不可以你连车都没有生产出来那来的"轮子"的呢??如果你想要一个4个"轮子"你可以public class 汽车:车
    {
    private 轮子;//这里为了保证汽车必须的四个轮子所以不允许其他人来访问所以是私有的
    public  汽车(){轮子 = 4;}//构造函数中初试化
    }
      

  4.   

    但是我已经象上面那样用了.我在web page 里声明了一个用户控件.然后在一个页面里 用了 myUserControl myUserControl1,然后另外一个页面继承了这个页面,然后把用户控件添加到了那个页面(是不是这样也算实例化了?)
      按照上面的说法可以使用.请问为什么?
      我的理解对吗?