首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

关于承继一段代码

2012-11-05 
关于继承一段代码C# codeclass test{public static void Main(string[] args){string s MainClass

关于继承一段代码

C# code
  class test    {        public static void Main(string[] args)        {            string s = "' ";            MainClass y = new MainClass();            BaseClass x = y;            x.i = 100;            Console.WriteLine("{0} ,{1}", x.i, y.i);            Console.ReadKey();        }    }    class MainClass : BaseClass    {        public int i;    }    class BaseClass    {        public int i;    }

输出结果为什么是100,0 在java里面输出结果也是一样的.求大神解释通俗点,小弟才疏学浅.

[解决办法]
MainClass 的 i

BaseClass 的 i
一点关系都没有。
[解决办法]
x是x,y是y,
[解决办法]
你这里没有override(字段也不允许override),那么你当前是什么类型,就访问的那个类型下面对应的字段,不可能会混淆的。
[解决办法]
1. string s = "' "; 有什么用?
2. 不要将字段public
3. 尽管代码不规范,但程序隐含使用的new关键字,也就是hide,并没有override,所以各是各。

热点排行