`
f002489
  • 浏览: 271724 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

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

    博客分类:
  • C#
 
阅读更多
http://developer.51cto.com/art/200908/145356.htm


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);  
    }  
    }
分享到:
评论

相关推荐

    C#的17种Hello World的写法

    ### C#中的17种Hello World写法 在学习任何编程语言时,编写第一个程序“Hello World”都是一个传统而重要的步骤。对于初学者来说,这不仅是一个简单的实践项目,还可以帮助他们熟悉语言的基本语法和结构。下面我们...

    hello world 的 N 种写法

    hello world 的 N 种写法 包含 批处理 汇编 vbs js c++ c# java boo 等近100种语言的HelloWorld

    C#学习进阶Hello World的17种写法代码分享

    C# Hello World写法入门: 1. 初学者 代码如下:public class HelloWorld{ public static void Main() { System.Console.WriteLine(“HELLO WORLD”); }} 2. 改进的HELLO WORLD 代码如下:using System; public ...

    WCF的几种HelloWorld写法研究

    4. **HelloWorld写法** - **基本写法**: 使用`ServiceHost`启动服务,创建一个实例,指定服务类型和服务地址。客户端通过生成的代理类调用服务。 - **配置文件写法**: 将服务配置信息写入App.config,通过配置启动...

    VB.NET与C#语法比较

    - C# 在声明时可以直接初始化,如 `String s = "Hello World"`,VB.NET 也有类似的功能,如 `Dim s As String = "Hello World"`。 8. 判断语句(If 语句): - C# 的条件判断使用 `if (Request.QueryString != ...

    Professional C#, 3rd Edition_AppD_C# for C++ Developers.pdf

    - **类型安全性**:C#是一种类型安全的语言,这意味着它不会允许不安全的操作,如指针操作等,这有助于减少运行时错误。 - **垃圾回收**:C#支持自动内存管理,通过.NET框架的垃圾回收机制处理对象的生命周期,减少...

    白话C#之第一话 初学C的看看吧

    方法则执行特定操作,如`void HelloWorld() { Console.WriteLine("Hello, World!"); }` 3. **控制流语句**:C#提供了if条件语句、switch选择语句以及循环(for、while、do-while)来控制程序的流程。例如,用if判断...

    C#的复习不二选择

    例如,`Console.WriteLine("Hello, World!");`用于打印字符串,`Console.ReadLine()`用于读取用户输入。 3. **控制流**: - **条件语句**:C#中的`if`语句与描述中的"if end if"类似,如: ```csharp if ...

    VB和c#语法对照 (2).docx

    在VB.NET和C#这两种流行的.NET编程语言中,有许多相似之处和不同之处。本文将深入探讨两者在程序结构、注释、数据类型以及初始化等方面的异同。 首先,我们来看看程序结构。VB.NET和C#都遵循面向对象的原则,但它们...

    c#编码规范

    类名和方法名推荐使用Pascal大小写形式,以体现出其在代码中的显眼性,例如“public class HelloWorld”,而变量和方法参数则使用Camel大小写,如“string fullName”和“void SayHello(string name)”。 2. **避免...

    C#编码规范--很详细

    例如,类`HelloWorld`对应的文件名为`HelloWorld.cs`。 **四、注释与文档** 1. **注释风格**:注释应与代码对齐,清晰地描述代码意图或逻辑。方法名应直观反映其功能,减少不必要的文档注释需求。 **五、编程习惯...

    C# 培训模拟试题 (2)

    因此,`MyClass : Base1, Base2`如果Base1是接口而Base2是类,则该定义同样是不合法的,正确的写法应为`MyClass : Base2, Base1`,其中Base1为接口。 ### 构造函数调用顺序 在派生类的构造函数中,如果没有显式...

    C#多线程编程中的锁系统基本用法

    平常在多线程开发中,总避免不了线程同步。... 目录 一:lock、Monitor  1:基础。  2: 作用域。  3:字符串锁。... 4:monitor使用 ...Lock是Monitor语法糖简化写法。... string obj = “helloworld”;  lock (obj)  

    Lambda_lambda_visualc_

    在C#编程中,Lambda表达式是一种简洁的匿名函数写法,它在处理函数式编程和事件处理等场景中尤其常见。"Lambda_lambda_visualc_"这个主题主要关注如何在Visual C#环境中使用Lambda表达式。Lambda表达式是C#语言的一...

    stringexercise

    C# 6引入了字符串插值,更简洁的写法是`string greeting = $"Hello, {username}";`. 5. **正则表达式** C#提供了`System.Text.RegularExpressions`命名空间,通过`Regex`类可以进行复杂的文本匹配和替换操作,如...

Global site tag (gtag.js) - Google Analytics