日期:2014-05-18 浏览次数:20982 次
public class A
{
    public string Gets()
    {
        return "A";
    }
}
public class a : A
{
    public string Opter()
    {
        return "a";
    }
}
//通过下面的方式调用
A x = new a();
Response.Write(x.Gets());
------解决方案--------------------
从本质讲 实例化是生成一个对象 继承是生成一个类
举个例子
现在有个类叫NEWSTRING(假设现在没有什么STRING 要自己定义)
该类有3个析构函数 一个是NEWSTRING()一个是NEWSTRING(char[] str)一个是NEWSTRING(char[] str,int len)
有两个成员char[] str和int len
有一个方法是getlen 返回int len
好了
现在先说实例化
比如 NEWSTRING str1=new NEWSTRING("abc",3);
那么char[] str就是{'a','b','c'} int len就是3
可以使用str1.getlen 返回3
但只有这些功能了!
然后是继承
public class SUPERSTRING:NEWSTRING
那么 NEWSTRING本来的"功能"(析构函数 成员 方法)他都有 而你下面定义的就是新增的功能(当然也可以什么都不定义 就相当于换个名字 但那个叫:蛋疼....)
现在你定义了一个新的类 但还没有实例化
要SUPERSTRING str2=new SUPERSTRING(....);
------解决方案--------------------
你好
   
   第一个问题是继承,就是A类继承B类,那么A类就有了B类所有的属性和方法(不包括B类私有的).也就是A类是B类的子类(子集).
   第二个问题,创建实例需要首先声明一个对象的变量,然后用new关键字去创建一个对象并赋值给声明的对象变量:
 例: B A; //B在这里是类型,A是变量的名称  
     A=new B(); //这里是给这个变量A赋值,赋的值是用new关键字创建的B类型实例.
  这时候的A变量已经被赋值了,那么就可以通过A变量调用B类的所有公开的函数及变量了
当然你也可以通过new关键字创建A类型的实例赋值给B类型的变量A。在这种情况下,A变量只可以方问B为型的所有成员,不能访问A类型子类的成员.
 例:
    B A;
    A=new A();
   实际变量A的类型变为了A类型
------解决方案--------------------
MSDN是最好的老师,LZ去查查吧~
继承的说明:
http://msdn.microsoft.com/zh-cn/library/ms173149(VS.80).aspx
------解决方案--------------------
 继承:   楼主可以理解成是:创建一个类型(这个类型是CLASS)  
  实例化: 如果不实例化CLASS,CLASS就不能用。   
  
  对照下:   
        int是个类型  
               要用这个int类型 就要声明变量   否则上面的int 就不能用。  你目前也可以理解成: 实例化就是变量  只不过是称谓上不一样  
       懂了吗??? 给分  给分     我要分
------解决方案--------------------