不一样的入门:看C# Hello World的17种写法

2015-03-15 10:15:47  访问(1554) 赞(0) 踩(0)

// C# Hello World写法入门:

// 1. 初学者

public class HelloWorld   
{   
public static void Main()   
{   
System.Console.WriteLine("HELLO WORLD");   
}   
} 
// 2. 改进的HELLO WORLD

using System;  
 
public class HelloWorld   
{   
public static void Main()   
{   
Console.WriteLine("HELLO WORLD");   
}   
} 
// 3. 命令行形式

using System;  
 
public class HelloWorld   
{   
public static void Main(string[] args)   
{   
Console.WriteLine(args[0]);   
}   
}  
// 4. 构造函数

using System;   
public class HelloWorld   
{   
public HelloWorld()   
{   
Console.WriteLine("HELLO WORLD");   
}  
 
public static void Main()   
{   
HelloWorld hw = new HelloWorld();   
}   
}  
 
// C# Hello World写法进阶:

// 5. 面向对象

using System;   
public class HelloWorld   
{   
public void helloWorld()   
{   
Console.WriteLine("HELLO WORLD");   
}  
 
public static void Main()   
{   
HelloWorld hw = new HelloWorld();   
hw.HelloWorld();   
}   
} 
// 6. 从其他类

using System;   
public class HelloWorld   
{   
public static void Main()   
{   
HelloWorldHelperClass hwh = new HelloWorldHelperClass();   
hwh.writeHelloWorld();   
}   
}  
 
public class HelloWorldHelperClass   
{   
public void writeHelloWorld()   
{   
Console.WriteLine("Hello World");   
}   
} 
// 7. 继承

abstract class HelloWorldBase   
{   
public abstract void writeHelloWorld();   
}   
class HelloWorld : HelloWorldBase   
{   
public override void writeHelloWorld()   
{   
Console.WriteLine("Hello World");   
}   
}   
class HelloWorldImp   
{   
static void Main() {   
HelloWorldBase hwb = HelloWorld;   
HelloWorldBase.writeHelloWorld();   
}   
} 
// 8. 静态构造函数

using System;   
public class HelloWorld   
{   
private static string strHelloWorld;  
 
static HelloWorld()   
{   
strHelloWorld = "Hello World";   
}   
void writeHelloWorld()   
{   
Console.WriteLine(strHelloWorld);   
}  
 
public static void Main()   
{   
HelloWorld hw = new HelloWorld();   
hw.writeHelloWorld();   
}   
} 
// 9. 异常处理

using System;  
 
public class HelloWorld   
{   
public static void Main(string[] args)   
{   
try   
{   
Console.WriteLine(args[0]);   
}   
catch(IndexOutOfRangeException e)   
{   
Console.WriteLine(e.ToString());   
}   
}   
} 
// 10. 名字空间

using System;  
 
namespace HelloLibrary   
{   
public class HelloMessage   
{   
public string Message   
{   
get   
{   
return "Hello, World!!!";   
}   
}   
}   
}   
------   
using System;   
using HelloLibrary;  
 
namespace HelloApplication   
{   
class HelloApp   
{  
 
public static void Main(string[] args)   
{   
HelloMessage m = new HelloMessage();  
 
}   
}   
} 
// 11. 属性

using System;   
public class HelloWorld   
{   
public string strHelloWorld   
{   
get   
{   
return "Hello World";   
}   
}  
 
public static void Main()   
{   
HelloWorld hw = new HelloWorld();   
Console.WriteLine(cs.strHelloWorld);   
}   
} 
// 12. 代理

using System;   
class HelloWorld   
{   
static void writeHelloWorld() {   
Console.WriteLine("HelloWorld");   
}   
static void Main() {   
SimpleDelegate d = new SimpleDelegate(writeHelloWorld);   
d();   
}   
} 
// 13. 使用属性

#define DEBUGGING  
 
using System;   
using System.Diagnostics;  
 
public class HelloWorld : Attribute   
{   
[Conditional("DEBUGGING")]  
 
public void writeHelloWorld()   
{   
Console.WriteLine("Hello World");   
}  
 
public static void Main()   
{   
HelloWorld hw = new HelloWorld();  
 
hw.writeHelloWorld();   
}   
} 
// 14. 接口

using System;  
 
interface IHelloWorld   
{   
void writeHelloWorld();   
}  
 
public class HelloWorld : IHelloWorld   
{   
public void writeHelloWorld()   
{   
Console.WriteLine("Hello World");   
}  
 
public static void Main()   
{   
HelloWorld hw = new HelloWorld();  
 
hw.writeHelloWorld();   
}   
} 
// C# Hello World的特别写法:

// 15. 动态Hello World

using System;   
using System.Reflection;  
 
namespace HelloWorldNS{  
 
public class HelloWorld   
{   
public string writeHelloWorld()   
{   
return "HelloWorld";   
}  
 
public static void Main(string[] args)   
{   
Type hw = Type.GetType(args[0]);  
 
// Instantiating a class dynamically  
 
object[] nctorParams = new object[] {};   
object nobj = Activator.CreateInstance(hw, nctorParams);//, nctorParams);  
 
// Invoking a method  
 
object[] nmthdParams = new object[] {};   
string strHelloWorld = (string) hw.InvokeMember("writeHelloWorld", BindingFlags.Default | BindingFlags.InvokeMethod, null, nobj, nmthdParams);  
 
Console.WriteLine(strHelloWorld);   
}   
} 
// 16. 不安全代码Hello World

using System;  
 
public class HelloWorld   
{   
unsafe public void writeHelloWorld(char[] chrArray)   
{   
fixed(char *parr = chrArray)   
{   
char *pch = parr;   
for(int i=0; i< chrArray.Length; i++)   
Console.Write(*(pch+i));   
}   
}  
 
public static void Main()   
{   
HelloWorld hw = new HelloWorld();   
char[] chrHelloWorld = new char[] {'H','e','l','l','o', ' ', 'W','o','r','l','d'};   
hw.writeHelloWorld(chrHelloWorld);   
}   
} 
// 17. 使用InteropServices

using System;   
using System.Runtime.InteropServices;  
 
class Class1   
{   
[DllImport("kernel32")]   
private static extern int Beep(int dwFreq, int dwDuration);  
 
static void Main(string[] args)   
{   
Console.WriteLine("Hello World");   
Beep(1000, 2000);   
}   
} 


上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)