程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#高級(五)繼承,派生類,派生類的構造方法(3)

C#高級(五)繼承,派生類,派生類的構造方法(3)

編輯:關於C語言
4)、調用函數的基本版本

還是看上一個例子,我們稍作修改,如下,

public class test : baseClass2
{
public override string getUrl()
{
string url="http://";
url+=base.getUrl();
return url;
}
static void Main()
{
test classOne=new test();
Console.WriteLine(classOne.getUrl());
}
}

我們來看url+=base.getUrl();這一句,base就是調用基類的意思,所以,本例的輸出結果是

http://gosoa.com.cn

(5)、抽象類和抽象方法。

C#允許把類聲明為 abstract ,抽象類不能實例化,抽象方法不沒有執行代碼。

我覺得抽象類和抽象方法沒有什麼用,一般我們用接口就可以了。搞不太明白C#中這個抽象類和抽象方法到底想用來干什麼。

(6)、密封類和密封方法。

如果把類聲明為 sealed 即標明該類不可以被繼承,如果是方法,則方法不可以被重寫。

(7)、派生類的構造方法。

在派生類中,構造方法是依次從基類中執行,最後到派生類本身的構造函數。

我們來看下面的例子:

using System;
namespace gosoa.com.cn
{
public class userBase
{
private string username;
public userBase()
{
Console.WriteLine( "I'm good men");
}
public userBase(string username)
{
this.username=username;
}
}
public class oneMen : userBase
{
public oneMen()
{
Console.WriteLine( "Yes , I'm very good !");
}
public oneMen(string username):base(username)
{
Console.WriteLine( username +" is a good men!");
}
public oneMen(string username,string hisWebSite):base(username)
{
Console.WriteLine( username +"'s webSite is "+hisWebSite);
}
public static void Main()
{
oneMen classOne=new oneMen();
//oneMen classTwo=new oneMen("pan");
//oneMen classThree=new oneMen("pan","www.gosoa.com.cn");
}
}
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved