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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 samuelziul 于 2013-7-20 10:52 编辑

写完后测试,什么都没显示,求指教是什么原因? 谢谢!
class Program
    {
        static void Main(string[] args)
        {
            Student i = new Student();
            i.Name = "小明";
            i.age = 16;
            i.Habit = "喜欢弹钢琴";
            Teacher l = new Teacher();
            l.Name = "李明";
            l.age = 27;
            l.exp = 5;
            Console.ReadKey();

        }
    }
     class Student
     {
         public string Name;
         public int age;
         public string Habit;
         public void SayHello()
         {
             Console.WriteLine("大家好,我叫{0},我今年{1}岁,我的爱好是{2}", Name, age, Habit);
          }
      }
     class Teacher
     {
         public string Name;
         public int age;
         public int exp;
         public void SayHello()
         {
             Console.WriteLine("大家好,我叫{0},我今年{1}岁,我工作了{2}年了", Name, age, exp);
         }
     }
   
}

6 个回复

倒序浏览
对象是数据(字段)和行为(方法)的封装体,要想执行对象的行为则需要调用对象拥有的方法。楼主应分别调用学生和teacher的SayHello()方法。
  1. class Program
  2.     {
  3.         static void Main(string[] args)
  4.         {
  5.             Student stu = new Student {Name = "小明", Age = 16, Habit = "喜欢弹钢琴"};
  6.             stu.SayHello();
  7.             Teacher teacher = new Teacher {Name = "李明", Age = 27, Exp = 5};
  8.             teacher.SayHello();
  9.             Console.ReadKey();

  10.         }
  11.     }
  12.      class Student
  13.      {
  14.          public string Name;
  15.          public int Age;
  16.          public string Habit;
  17.          public void SayHello()
  18.          {
  19.              Console.WriteLine("大家好,我叫{0},我今年{1}岁,我的爱好是{2}", Name, Age, Habit);
  20.           }
  21.       }
  22.      class Teacher
  23.      {
  24.          public string Name;
  25.          public int Age;
  26.          public int Exp;
  27.          public void SayHello()
  28.          {
  29.              Console.WriteLine("大家好,我叫{0},我今年{1}岁,我工作了{2}年了", Name, Age, Exp);
  30.          }
  31.      }
复制代码

Result.png (22.21 KB, 下载次数: 0)

Result.png

评分

参与人数 1技术分 +1 黑马币 +3 收起 理由
zhangcheng5468 + 1 + 3

查看全部评分

回复 使用道具 举报
主方法里你没有用  public void SayHello() 方法

评分

参与人数 1技术分 +1 收起 理由
zhangcheng5468 + 1 赞一个!

查看全部评分

回复 使用道具 举报
             Student i = new Student();             i.Name = "小明";             i.age = 16;             i.Habit = "喜欢弹钢琴";             i.SayHello();
回复 使用道具 举报
你只是给变量付了值
回复 使用道具 举报
sxdxgzr@126.com 发表于 2013-7-16 23:04
对象是数据(字段)和行为(方法)的封装体,要想执行对象的行为则需要调用对象拥有的方法。楼主应分别调用学生 ...

哦,原来是这样,好,谢谢!
回复 使用道具 举报
你要在Main()方法中调用你定义类里面的方法才可以显示你想要的效果!

O5(9}ZN5E`URG`@IPSGQO]I.jpg (30.34 KB, 下载次数: 0)

O5(9}ZN5E`URG`@IPSGQO]I.jpg
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马