|
注:本文部份資料來(lái)自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)與我聯(lián)系,我會(huì)在第一時(shí)間聲明引用或?qū)⑵鋭h除!
當(dāng)初學(xué) C# 時(shí)是找個(gè)人大概問(wèn)了一下數(shù)據(jù)類(lèi)型和分支語(yǔ)句就開(kāi)始做項(xiàng)目了。這兩天又全面的看了一下相關(guān)的基礎(chǔ)知識(shí)(學(xué)而時(shí)習(xí)之嘛),總結(jié)了25個(gè)問(wèn)題:
1.靜態(tài)成員和非靜態(tài)成員的區(qū)別?
2.const 和 static readonly 區(qū)別?
3.extern 是什么意思?
4.abstract 是什么意思?
5.internal 修飾符起什么作用?
6.sealed 修飾符是干什么的?
7.override 和 overload 的區(qū)別?
8.什么是索引指示器?
9.new 修飾符是起什么作用?
10.this 關(guān)鍵字的含義?
11.可以使用抽象函數(shù)重寫(xiě)基類(lèi)中的虛函數(shù)嗎?
12.密封類(lèi)可以有虛函數(shù)嗎?
13.什么是屬性訪問(wèn)器?
14.abstract 可以和 virtual 一起使用嗎?可以和 override 一起使用嗎?
15.接口可以包含哪些成員?
16.類(lèi)和結(jié)構(gòu)的區(qū)別?
17.接口的多繼承會(huì)帶來(lái)哪些問(wèn)題?
18.抽象類(lèi)和接口的區(qū)別?
19.別名指示符是什么?
20.如何手工釋放資源?
21.P/Invoke是什么?
22.StringBuilder 和 String 的區(qū)別?
23.explicit 和 implicit 的含義?
24.params 有什么用?
25.什么是反射?
以下是我做的一份參考答案(C# 語(yǔ)言范疇之內(nèi)),如果有不準(zhǔn)確、不全面的,歡迎各位朋友指正!
1.靜態(tài)成員和非靜態(tài)成員的區(qū)別?
答:
靜態(tài)變量使用 static 修飾符進(jìn)行聲明,在類(lèi)被實(shí)例化時(shí)創(chuàng)建,通過(guò)類(lèi)進(jìn)行訪問(wèn)
不帶有 static 修飾符聲明的變量稱(chēng)做非靜態(tài)變量,在對(duì)象被實(shí)例化時(shí)創(chuàng)建,通過(guò)對(duì)象進(jìn)行訪問(wèn)
一個(gè)類(lèi)的所有實(shí)例的同一靜態(tài)變量都是同一個(gè)值,同一個(gè)類(lèi)的不同實(shí)例的同一非靜態(tài)變量可以是不同的值
靜態(tài)函數(shù)的實(shí)現(xiàn)里不能使用非靜態(tài)成員,如非靜態(tài)變量、非靜態(tài)函數(shù)等
示例:
using System;
using System.Collections.Generic;
using System.Text;
namespace Example01
{
class Program
{
class Class1
{
public static String staticStr = "Class";
public String notstaticStr = "Obj";
}
static void Main(string[] args)
{
//靜態(tài)變量通過(guò)類(lèi)進(jìn)行訪問(wèn),該類(lèi)所有實(shí)例的同一靜態(tài)變量都是同一個(gè)值
Console.WriteLine("Class1's staticStr: {0}", Class1.staticStr);
Class1 tmpObj1 = new Class1();
tmpObj1.notstaticStr = "tmpObj1";
Class1 tmpObj2 = new Class1();
tmpObj2.notstaticStr = "tmpObj2";
//非靜態(tài)變量通過(guò)對(duì)象進(jìn)行訪問(wèn),不同對(duì)象的同一非靜態(tài)變量可以有不同的值
Console.WriteLine("tmpObj1's notstaticStr: {0}", tmpObj1.notstaticStr);
Console.WriteLine("tmpObj2's notstaticStr: {0}", tmpObj2.notstaticStr);
Console.ReadLine();
}
}
}
NET技術(shù):C#基礎(chǔ)概念25問(wèn),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。