【发布时间】:2013-05-30 10:37:00
【问题描述】:
谁能告诉我“如何访问派生类中的基类变量”?
例子:
1.cs 类代码
public class baseClass
{
public int intF = 0, intS = 0;
public int addNo()
{
int intReturn = 0;
intReturn = intF + intS;
return intReturn;
}
}
Public class child : baseClass
{
public int add()
{
int intReturn = 0;
intReturn = base.intF * base.intS;
return intReturn;
}
}
Class2.cs 代码
class Program
{
static void Main(string[] args)
{
baseClass obj = new baseClass();
obj.intF = 5;
obj.intS = 4;
child obj1 = new child();
Console.WriteLine(Convert.ToString(obj.addNo()));
Console.WriteLine(Convert.ToString(obj1.add()));
Console.ReadLine();
}
}
问题出在从基类继承的子类中..
intF 和 intS 的值总是显示为 0 而不是 5&4。
谁能告诉我哪里出错了?
问候,
G.V.N.桑迪普
【问题讨论】:
-
两个答案都是正确的。获得预期结果的两种最简单的方法是: 1) 将 obj 声明为“baseClass obj = new child()”并删除创建 obj1 的行(它将始终是默认值);和 2) 将 intF 和 intS 声明为“public static int”
-
完全重复(为什么?):stackoverflow.com/questions/5296026
标签: c#