OK,我又回來了,前面寫了那麼多,跟JAVA的對比也夠多了,現在我就用我自己試驗的例子,來看一看C#這個被稱為JAVA#的新一代編程語言到底與JAVA有多大的區別.
首先我們建立一個C#的程序文件cs1.cs,然後再建立一個JAVA的源程序文件cs1.java.它們的內容分別是:
cs1.cs:
using System;
public class cs1{
public static void Main(){
Console.WriteLine("i am sunwen!");
sunwen mySunwen=new sunwen();
Console.WriteLine(mySunwen.name);
}
}
class sunwen{
public String name="chenbin!";
}
cs1.java:
import System.*;
public class cs1{
public static void main(String args[]){
System.out.println("i am sunwen,how are you!");
sunwen mySunwen=new sunwen();
System.out.println(mySunwen.name);
}
}
class sunwen{
String name="chenbin!";
}
OK,讓我們來運行一下這兩個程序.在編譯過程中我們發現,C#的速度的確比JAVA要快好多.(不是說M$的好話)其實,兩個程序的輸出是一樣的,都是:
i am sunwen!
chenbin!
有一個重要的區別就是看有一行是publc String name="chenbin!",而在JAVA中卻是String name="chenbin!".如果我們在cs1.cs中把這個public去掉,就會產生錯誤,因為在C#中,不用任何范圍修飾符時,默認的是protect,因而不能在類外被訪問.
這是一個重要的區別之一.還有就是:如果我們把cs1.cs這個C#程序中的一句public class cs1改為public class cs2,存盤,再編譯,可以看到,程序正常運行.而在JAVA中,這顯然不行,因為JAVA規定,在一個文件中只能有一個public類,而且這個類的名稱必須與文件名一模一樣.這又是一個區別,在C#中,它是以Main方法來定位入口的.如果一個程序中沒有一個名為Main的方法,就會出"找不到入口的錯誤".不要把Main寫成main喲,嘻嘻,我經常犯這樣的錯誤.
好了,就說到這了,以後再遇到再說吧!