當(dāng)父類構(gòu)造函數(shù)有多個(gè)重載時(shí),不加base
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的堯都網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
則自動(dòng)匹配父類無參數(shù)的構(gòu)造函數(shù);base()關(guān)鍵字可以顯示地指定參數(shù)以匹配父類的構(gòu)造函數(shù);EG:
class
people
{
public
string
str
=
"moren";
public
people(string
s)
{
this.str
=
s;
Console.WriteLine(this.str);
}
public
people()
{
Console.WriteLine(str);
}
}
class
me
:
people
{
public
me()
{
Console.WriteLine("me子類");
}
}
class
you
:
people
{
public
you()
:
base("you子類")
{
Console.WriteLine("you子類");
}
}
static
void
Main(string[]
args)
{
string
str
=
"main";
me
me1
=
new
me();
Console.WriteLine("===============================");
you
you1
=
new
you();
Console.Read();
結(jié)果:
moren
me子類
===============================
you子類
you子類
另外,虛機(jī)團(tuán)上產(chǎn)品團(tuán)購,超級(jí)便宜
Public?Class?Form2
Dim?test?As?String
Public?Sub?New(ByVal?_test?As?String)
test?=?_test
End?Sub
End?Class
Form1 中 New Form2("abc") 即可傳參給 Form2 中的 test。
但在 VB.NET 中,沒必要這么麻煩,只需要聲明為 Public,即可直接方法,如:
Public?Class?Form2
Public?test?As?String
End?Class
Form1 中直接 Form2.test = "abc" 即可。
不同編程語言的構(gòu)造方法的命名規(guī)則有所不同,但都不允許編程人員任意命名。 這是強(qiáng)制規(guī)定的,沒有為什么。
比如:
c++、java、c#等語言規(guī)定構(gòu)造方法必須與類名相同。
而vb.net的構(gòu)造方法統(tǒng)一叫New(實(shí)際上是一個(gè)過程Sub)。
此外,我們一般把__init__方法叫做python的構(gòu)造方法。
public
structure
struc
public
name
as
string
public
shengao
as
integer
……
end
structure
public
items
as
struc()
readonly
property
people(argname
as
string)
as
struc
get
for
each
i
as
struc
in
items
if
i.name=argname
then
reture
i
next
end
get
end
property
struc可以用class,property可以用function,people通過參數(shù)返回一個(gè)對(duì)象,對(duì)象可以來源于某個(gè)數(shù)組的某個(gè)元素,也可以是其他來源。
people也可以是類的
構(gòu)造方法
,而shengao等是類的成員,但你的寫法是錯(cuò)誤的,構(gòu)造方法必須用new
實(shí)例化