让我们用中文编程 - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- 让我们用中文编程 (http://www.webasp.net/article/14/13659.htm) |
| -- 作者:未知 -- 发布日期: 2004-10-10 |
| 让我们用中文编程
刚才突然想到C#里面应该支持中文编程,因为他支持源代码的Unicode,于是用中文写了一个小程序,看看能不能编译执行,结果果然如我所料,可以执行,虽然代码实用价值没有,但是很有趣味。我想用这样的小程序教一个中国学生学面向对象,可能门槛会更低一些,而且也有趣的多,毕竟是母语。(稍作修正,直接用运行时类别鉴定来决定"我是谁") 程序的源代码是: using System; namespace 中文编程 { public class 生物 { public virtual void 自我介绍() { Console.WriteLine( "我是...咦?我是什么?我也不知道我是什么,反正我是一个"+this.GetType().Name ); } } public class 动物 : 生物 { protected string 移动方式; protected string 量词 = "只"; public 动物() { 移动方式 = "移动"; } public virtual void 移动() { Console.WriteLine( "这"+量词+this.GetType().Name+"在自由自在的"+移动方式 + Environment.NewLine ); } public override void 自我介绍() { Console.WriteLine( "我属于"+this.GetType().BaseType.Name+", 我是一"+量词+"可爱的"+this.GetType().Name ); } } public class 鸟 : 动物 { public 鸟() { 移动方式 = "飞翔"; } } public class 鱼 : 动物 { public 鱼() { 移动方式 = "游来游去"; 量词 = "条"; } } public class 马 : 动物 { public 马() { 移动方式 = "奔跑"; 量词 = "匹"; } } sealed public class 运行 { [STAThread] static void Main(string[] args) { 生物[] 动物园 = new 生物[5]; 动物园[0] = new 鸟(); 动物园[1] = new 鱼(); 动物园[2] = new 马(); 动物园[3] = new 动物(); 动物园[4] = new 生物(); foreach( 生物 小生物 in 动物园 ) { 小生物.自我介绍(); if( 小生物 is 动物 ) { ((动物) 小生物).移动(); } } } } } 这个程序的执行结果是: D:\Project\C#\MyTest\中文编程\bin\Debug>中文编程.exe 我属于动物, 我是一只可爱的鸟 这只鸟在自由自在的飞翔 我属于动物, 我是一条可爱的鱼 这条鱼在自由自在的游来游去 我属于动物, 我是一匹可爱的马 这匹马在自由自在的奔跑 我属于生物, 我是一只可爱的动物 这只动物在自由自在的移动 我是...咦?我是什么?我也不知道我是什么,反正我是一个生物 |
| webasp.net |