1.Substring.
在Java中,String類有個substring方法。在C#中,string類有個Substring方法。
他們的功能也不一樣。
Java中:
String s="ABCDEFG";
那麼。s.substring(1,2)的值為"B",因為參數的意思是兩個位置。
C#中:
string s="ABCDEFG";
那麼。s.Substring(1,2)的值為"BC",因為第一個參數是位置,第二個是取字元的個數。
2.解構函式
Java不支援解構函式。而雖然C#支援解構函式,一般也不推薦使用,因為它和C++的解構函式並不一樣。取而代之。一般使用 System.IDisposable介面的void Dispose()方法。
3.分類。(包,名稱空間)
Java中叫package,C#中叫namespace
4.父類引用
Java中叫Super,C#中叫base
5.繼承
Java中用“extends”,C#中就用一個冒號“:”
6.預設存取修飾詞
Java是friendly
C#是private
所以,C#中的類和建構函式一般都要加上public
7.建構函式
Java:
class Father
{
int n;
Father(int n)
{
this.n=n;
}
}
class Child
{
Child()
{
this(200);
}
Child(int n)
{
super(n);
}
}
C#:
public class Father
{
private int n;
public Father(int n)
{
this.n=n;
}
}
public class Child
{
public Child() : this(200)
{
}
public Child(int n) : base(n);
{
}
}
8.C#支援屬性方法。
如:
public class People
{
private int _age;
public int Age
{
set { this._age=value; }
get { return this._age; }
}
}
而java要這樣寫:
class People
{
int _age;
public int getAge() { return this._age; }
public void setAge(int age) { this._age=age;}
}
9.存取修飾詞
C#中有瞭解決方案,項目這樣的概念。Java中沒有。自然存取修飾詞也不一樣。
C#:
public --不限制訪問
internal -- 同程式集(項目,裝配件)可見
protected --衍生類別可見
private --本類可見
Java:
public --不限制訪問
protected --衍生類別可見
friendly --本包可見
private --本類可見