null 与 object

最近在写代码时定义如下代码形式

 1 None.gif using  System;
 2 None.gif using  System.Collections;
 3 None.gif public   class  MyClass
 4 ExpandedBlockStart.gifContractedBlock.gif dot.gif {
 5InBlock.gif    public static void Main()
 6ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
 7InBlock.gif        MyClass my = new MyClass();
 8InBlock.gif        my.test(null);
 9InBlock.gif        Console.Read();
10ExpandedSubBlockEnd.gif    }

11InBlock.gif    
12InBlock.gif    public void test(string aa)
13ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
14InBlock.gif        Console.WriteLine("string");
15ExpandedSubBlockEnd.gif    }

16InBlock.gif    
17InBlock.gif    public void test(object aa)
18ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
19InBlock.gif        Console.WriteLine("object");
20ExpandedSubBlockEnd.gif    }

21InBlock.gif    
22InBlock.gif    //public void test(MyClass1 myClass1)
23InBlock.gif    //{
24InBlock.gif    //    Console.WriteLine("MyClass1");
25InBlock.gif    //}
26ExpandedBlockEnd.gif}

27 None.gif
28 None.gif // public class MyClass1
29 None.gif // {}


本来想输出的结果是object,谁知输出的却是string.
看来在定义多态和调用null时,一定要注意喽,否则出错了。
如果把注释去掉,则编译出错。开来只与object有混淆。
原理,俺不知道,那位知道就指导一下。

转载于:https://www.cnblogs.com/rock_chen/archive/2005/07/25/199522.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值