閱讀386 返回首頁    go 阿裏雲 go 技術社區[雲棲]


yahoo 的 C# 筆試題

從某個地方copy過來的,它的原 出處隻出了30~50我也就隻能轉過來30~51……感覺問得很基礎,卻沒幾道會的,更沒幾道能較準的,尤其是關於DP的那幾道題,尤其,尤其是翻譯成中 文的那些……譯得很垃圾的樣子……還要我把它再翻譯成英語才能明白它說的到底是什麼東西,汗…………

PS:DP到現在除了abstract factory和singleton之外其它的隻能說理解了它那麼做有什麼好處,有不多的幾個看起來就很典型的能認出來,寫是絕對寫不出來的,汗……

Question 31. (單選)

  根據線程安全的相關知識,分析以下代碼,當調用test方法時i>10時是否會引起死鎖?

public void test(int i)
{
lock(this)
{
if (i>10)
{
i--;
test(i);
}
}
}

   1. 會鎖死
    2. 不會鎖死

Question 32. (單選)

  以下描述錯誤的是()

  1. 在C++中支持抽象類而在C#中不支持抽象類。
   2. C++中可在頭文件中聲明類的成員而在CPP文件中定義類的成員,在C#中沒有頭文件並且在同一處聲明和定義類的成員。
   3. 在C#中可使用 new 修飾符顯式隱藏從基類繼承的成員。
   4. 在C#中要在派生類中重新定義基類的虛函數必須在前麵加Override。

Question 33. (單選)

  int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}; myArray3[2][2]的值是()。

  1. 9
   2. 2
   3. 6
   4. 越界

Question 34. (單選)

  在C#中利用Socket進行網絡通信編程的一般步驟是:建立Socket偵聽、( )、利用Socket接收和發送數據。

  1. 建立Socket連接
   2. 獲得端口號;
   3. 獲得IP地址;
   4. 獲得主機名;

Question 35. (單選)

  如果設treeView1=new TreeView(),TreeNode node=new TreeNode("根結點" ),則treeView1.Nodes.Add(node)返回的是一個 ()類型的值。

  1. TreeNode;
   2. int;
   3. string;
   4. TreeView;

Question 36. (單選)

  聲明一個委托public delegate int myCallBack(int x); 則用該委托產生的回調方法的原型應該是

  1. void myCallBack(int x)
   2. int receive(int num)
   3. string receive(int x)
   4. 不確定的

Question 37. (單選)

  關於ASP.NET中的代碼隱藏文件的描述正確的是

  1. Web窗體頁的程序的邏輯由代碼組成,這些代碼的創建用於與窗體交互。編程邏輯唯一與用戶界麵不同的文件中。該文件稱作為“代碼隱藏”文件,如果用C#創建,該文件
   2. 項目中所有Web窗體頁的代碼隱藏文件都被編譯成.EXE文件
   3. 項目中所有的Web窗體頁的代碼隱藏文件都被編譯成項目動態鏈接庫(.dll)文件
   4. 以上都不正確

Question 38. (單選)

  What compiler switch creates an xml file from the xml comments in the files in an assembly?

  1. /text
   2. /doc
   3. /xml
   4. /help

Question 39. (單選)

  下麵的代碼實現了設計模式中的什麼模式

  public class A {
   private A instance;
   private A() {
   }

  public static A Instance {
   get
   {
   if ( A == null )
   A = new A();
   return instance;
   }
   }
   }

   1. Factory
    2. Abstract Factory
    3. Singleton
    4. Builder

Question 40. (單選)

class Class1
{
public static int Count = 0;
static Class1()
{
Count++;
}
public Class1()
{
Count++;
}
}
Class1 o1 = new Class1();
Class1 o2 = new Class1();

  請問,Class1.Count的值是多少?( )

   1. 1
    2. 2
    3. 3
    4. 4

Question 41. (單選)

abstract class BaseClass
{
public virtual void MethodA()
{
Console.WriteLine("BaseClass");
}
public virtual void MethodB()
{
}
}
class Class1: BaseClass
{
public void MethodA()
{
Console.WriteLine("Class1");
}
public override void MethodB()
{
}
}
class Class2: Class1
{
new public void MethodB()
{
}
}
class MainClass
{
public static void Main(string[] args)
{
Class2 o = new Class2();
o.MethodA();
}
}

  請問,此程序輸出結果是:

   1. BaseClass
    2. BassClass Class1
    3. Class1
    4. Class1 BassClass

Question 42. (單選)

public static void Main(string[] args)
{
int i = 2000;
object o = i;
i = 2001;
int j =(int) o;
Console.WriteLine("i={0},o={1}, j={2}",i,o,j);
}

   1. i=2001,o=2000,j=2000
    2. i=2001,o=2001,,j=2001
    3. i=2000,o=2001,,j=2000
    4. i=2001,o=2000,j=2001

Question 43. (多選)

  您要創建ASP.NET應用程序用於運行AllWin公司內部的Web站點,這個應用程序包含了50個頁麵。您想要配置這個應用程序以便當發生一個HTTP代碼錯誤時它可以顯示一個自定義的錯誤頁麵給用戶。您想要花最小的代價完成這些目標,您應該怎麼做?(多選)

   1. 在這個應用程序的Global.asax文件中創建一個Application_Error過程去處理ASP.NET代碼錯誤。
    2. 在這個應用程序的Web.config文件中創建一個applicationError節去處理ASP.NET代碼錯誤。
    3. 在這個應用程序的Global.asax文件中創建一個CustomErrors事件去處理HTTP錯誤。
    4. 在這個應用程序的Web.config文件中創建一個CustomErrors節去處理HTTP錯誤。

Question 44. (單選)

  如下程序的運行結果是:

public abstract class A
{
public A()
{
Console.WriteLine('A');
}
public virtual void Fun()
{
Console.WriteLine("A.Fun()");
}
}

public class B: A
{
public B()
{
Console.WriteLine('B');
}

public new void Fun()
{
Console.WriteLine("B.Fun()");
}

public static void Main()
{
A a = new B();
a.Fun();
}
}

   1. A B A.Fun()
    2. A B B.Fun()
    3. B A A.Fun()
    4. B A B.Fun()

Question 45. (單選)

  Which of these string definitions will prevent escaping on backslashes in C#?*

   1. string s = #”n Test string”;
    2. string s = “’n Test string”;
    3. string s = @”n Test string”;
    4. string s = “n Test string”;

Question 46. (單選)

  Which of the following operations can you NOT perform on an ADO.NET DataSet?

   1. A DataSet can be synchronised with a RecordSet.
    2. A DataSet can be synchronised with the database.
    3. A DataSet can be converted to XML.
    4. You can infer the schema from a DataSet

Question 47. (單選)

  In Object Oriented Programming, how would you describe encapsulation?

   1. The conversion of one type of object to another.
    2. The runtime resolution of method calls.
    3. The exposition of data.
    4. The separation of interface and implementation.

Question 48. (單選)

  How does assembly versioning in .NET prevent DLL Hell?

   1. The runtime checks to see that only one version of an assembly is on the machine at any one time.
    2. .NET allows assemblies to specify the name AND the version of any assemblies they need to run.
    3. The compiler offers compile time checking for backward compatibility.
    4. It doesn’t.

Question 49. (單選)

  三種常用的字符串判空串方法:

   1: bool isEmpty = (str.Length == 0);
    2: bool isEmpty = (str == String.Empty);
    3: bool isEmpty = (str == "");

  哪種方法最快?

   1. 1
    2. 2
    3. 3

Question 50. (單選)

public sealed class SampleSingleton1
{
private int m_Counter = 0;
   private SampleSingleton1()
{
Console.WriteLine(""初始化SampleSingleton1。"");
}

public static readonly SampleSingleton1 Singleton = new SampleSingleton1();

public void Counter()
{
m_Counter ++;
}
}

  以上代碼實現了設計模式中的哪種模式?

   1. 原型
    2. 抽象工廠
    3. 單鍵
    4. 生成器

 

最後更新:2017-04-02 00:06:29

  上一篇:go [原創]Unlocker加強版技術特征
  下一篇:go 構造方法