A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 熊薇 中级黑马   /  2013-3-11 23:38  /  1676 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 熊薇 于 2013-3-12 09:04 编辑

如下代码,为什么定义  int sum=math+english;时会出错,而把此语句写在Show()方法中却可行
class Person
    {
        int math;
        public int Math
        {
            get { return math; }
            set { math = value; }
        }
        int english;
        public int English
        {
            get { return english; }
            set { english = value; }
        }
        int sum = math + english;        
       public void Show()
        {
            Console.WriteLine("总成绩为:{0}",sum);
        }      
    }

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

2 个回复

倒序浏览
sum 定义在类里面属于字段

你定义在方法中 sum就是一个变量了

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报

仅供参考
个人觉得你这样的代码意义不大,还得多学习学习,得把参数给弄懂了

你是否可以这样

namespace 练习_
{
    class Program
    {
        static void Main(string[] args)
        {
            Person pi = new Person();
            pi.Math = 10;
            pi.English = 30;
            pi.Show();
            Console.ReadKey();
        }
    }

     class Person
    {
         int math;
        public int Math
        {
            get { return math; }
            set { math = value; }
        }
        int english;
        public int English
        {
            get { return english; }
            set { english = value; }
        }

        public void Show()//这个方法用于求math+english的和并输出和
        {
            /*我觉得你应该把运算math+english写在方法里,这样你以后通过给Person对象的
            属性赋值后直接调用调用此方法,即可实现你想要的*/
            int sum = math + english;
            Console.WriteLine("总成绩为:{0}",sum);
            //以下也行
            //Console.WriteLine("总成绩为:{0}", math+english);
        }
    }
}


评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马