|
一、单选题(共 10 道试题,共 50 分。)V 1. # b8 w$ P# L r0 b, _
MyClass为一个自定义的类,则下列语句创建了多少个类MyClass的对象?
+ H+ p- N/ V. P' z( \1 G+ J- e$ W1 }/ R% m) o+ Z! M' w
MyClass[ , ] myArray = new MyClass[2][3];
! g; e V4 t( F) e3 ?. A: _8 M
) K. g: J+ {; a! G7 P9 PA. 0
+ h3 P' m( v/ CB. 2
3 g7 H) X5 q: Z R4 eC. 3+ p5 @( c/ c' l
D. 6
0 r: u) `& p) h' P; k 满分:5 分' d. R4 \+ ]& r# C$ f
2. : R; ~: }$ ^1 b) O, \- z
下面关于析构函数的说法中,不正确的是( )
; t, ]% T5 c- c) D' k" l$ Y5 ]# [3 Y7 Q V9 P
A. : I7 l f5 @8 h$ t: d$ r
析构函数中不可以包含return语句
; e" y/ n; T4 {5 I: N$ d$ d
& S) B$ Z) c% M5 W/ V n" I# AB. # e/ b% i ^ D' A( S% b w
一个类中只能有一个析构函数/ B, F7 S5 D! @3 }& t& p% _
Y+ E" ^' t0 m* A W! g7 }. U4 [
C.
( `+ C ~; r; C9 g, ?' G0 `' \析构函数在对象被撤销时,被自动调用
& A. m6 P/ t; C& g, ]: T/ D) k( n) x& F4 o9 v
D. / }" _* B* x5 ^
用户可以定义有参数的析构函数
( {- U0 c; m1 ?/ v# D' ?) [& T1 e. A$ ]
满分:5 分$ o: a* \8 e8 |4 X: e
3.
" t) K, }" M8 ]5 D( y+ G 已知结构Resource 的定义如下:
( R' \) ?$ k: w3 y5 c3 o6 O' X* N( {4 U8 y' h
struct Resource{' e |4 A0 L9 O
7 J6 S2 X: ], ^8 T2 M# f4 F
public int Data = 0;
1 P0 }0 `- S2 E1 `: y
- e. D! M4 I$ P0 U5 x}1 A/ q1 |" s- N3 v7 c* Y i
9 J% I+ s5 }- p/ e
则下列语句的运行结果为________。
( k* w& a3 ~2 p R2 q# G* z7 {+ C0 w8 b* Y
Resource[] list= new Resource[20]; 5 K% c6 I0 f2 A0 y8 b
) ?9 W1 T1 Q0 O2 u" S: M1 W3 hfor(int i = 0;i<20;i++){ , B, R ?& X3 ^2 H2 a$ }0 f- J, Q
# g. i0 j X* T: L1 P, J
System.Console.WriteLine(“data={0}”,list[i].Data);
# s! K0 d4 g4 G2 Z R' R0 f v+ Y+ L; ?( x
} 8 N- |( M1 X& a" \
/ T9 M" E& F( P( V# b
A. + h ]5 A0 R, _7 B- k, k8 q
打印20 行,每行输出都是 data=0
7 a2 T' S# x' G8 {( j) v' z: Z) s: A0 X7 Q4 H+ `; @
B. 6 A( c# M2 H) H0 [" L. f- c) h
打印20 行,每行输出都是 data=null5 z. r" o$ r- I9 ?' K$ l1 X
0 Y8 c' ?8 N% U; Z* @- HC.
' f- b; D) @$ l9 X- {% U, L* {打印20行.第1行输出data=0,第2行输出data=2,.,第20行输出data=19
7 b7 T: V& p7 D) v0 M7 c$ V) x
E3 e3 h: w$ t- q- {D.
& q) K! J2 i& v' b. _出现运行时异常/ y4 P7 g8 e ], a% k+ s! I6 x0 X
0 v* U7 }7 h. ^4 q& s% Y- u9 x
满分:5 分" X o# B' O4 r) R9 I7 \
4.
f1 x' }& K _7 O接口是一种引用类型,在接口中可以声明(),但不可以声明公有的域或私有的成员变量。: y2 g" j5 d& q, ?% R! r; N9 N
0 y) o* M4 m" d. t7 j1 t# o
A.
1 P( ~& T% g) Y7 P方法、属性、索引器和事件 r- ^) T' X; ?
3 T2 p1 f: _& ~6 ]; l2 i& K
B.
' u, x5 l. }0 e) @, O1 { t0 w方法、属性信息、属性
4 @. [! U! f8 i; R) C' u9 [% u4 y, ?9 l4 D
C.
& L% S* b# H- a- o2 U索引器和字段% f0 G9 f# _! s5 M4 s
4 c F3 D0 } f0 b4 M' p" w9 _D.
8 t1 @. ?& }; @9 A5 P3 s! p3 b事件和字段* n1 r0 Q0 X6 Q# q
6 p" n5 S C7 | 满分:5 分3 m* k* }# }4 h- e6 J
5. # b4 F; _. J. ]* ?: n- m
C#语言中,下列能够作为变量名的是____。
% E( {: @# q1 o6 a+ p% n6 k6 o" j) f6 L% c& _, |, e
A.
' p( Q+ p) z; u1 B5 f" c( T+ B t1 Jif
+ ~* p- T6 g% u% t6 O
! ?" U: |1 ]* G4 i+ zB.
& w. d" J: z4 V+ n1 }3ab/ P" B7 S: b6 e- w+ z4 L+ S
: X1 a1 y' ~& S4 s9 F+ B6 m5 W
C.
4 }4 C! @* }" C) L8 N0 Ga_3b. H! w' a# J, ]5 U) v: m$ G
) g8 ^$ K- U) b2 x& o7 Y
D. 6 u; `% D) q) X) `# H
a-bc
3 Z% V8 Y7 f q7 i) ?' j) E
/ R/ ~; \; R0 o* @; w 满分:5 分
- ~; d% e; `* I) F% T# Z6. 3 f6 q) k% b/ r' J/ r" H
C#程序的书写,下列不正确的说法是___。
# z9 Y, f6 N8 Y/ ]* Q- O9 g4 w% @1 K) c
A.
/ M3 k8 W7 [2 b/ I区分大小写
: V& ?; j2 P* D$ l, x
; R$ N e& r, X H4 z' z8 ]& N% TB. & a) ^+ r4 J! ~: C
一行可以写多条语句
: I+ R% o9 t3 L& }% V' x$ A+ @" ~8 M' @; P
C. / Y8 o; B( \3 {; X+ s
一条语句可写成多行
3 S5 f7 d+ \/ `+ T% y+ x# o8 g$ I4 }0 v5 C
D. : g1 T! \3 U4 M/ c8 Y" {
一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法
& F- P- v; M; ?0 N, i& v
2 B' b) A' M" w$ M% n1 L$ [+ Q( q 满分:5 分
) ^4 }4 \$ f' r+ P+ O2 t& A7. * C# x/ d9 j) h i9 ?7 X
下面有关静态方法的描述中,正确的是:* y" m) C7 X1 p+ k( J
7 H# Y8 q+ x# }3 D' N+ Q: gA.
8 K7 P: i! a. [# b% G3 I静态方法属于类,不属于实例. T) S: M+ g7 Q4 E" S
# v) A0 q% B! nB.
$ w& R& S, h' |" a静态方法可以直接用类名调用
0 M" M9 ]$ e& w$ v( r" O. @3 U/ u8 u
C.
, l$ X4 `0 P1 ~! e6 `: I0 T6 ^静态方法中,可以访问非静态的局部变量1 J$ N4 z. I/ |; T# w. d
4 W/ }! @7 M- N0 n" ^7 b) N+ r
D. : z g y$ a. Q" T: S! c2 E
静态方法中,可以访问静态的变量
6 f' P2 z, J, e: i2 A; k2 `% G
4 I% S: C6 [% n% K% L5 W- z: Z/ h 满分:5 分
3 m' |( `5 Q! ?& X5 x4 j8. # `% s1 @# x9 M% L
在C#中设计类时,应如何保证在释放对象的所有引用之时,释放对象使用的文件、网络等资源?- p8 \& t4 W: T! S0 |9 R$ [
0 ] g) Y! ^0 r" W
A. # k6 s! B) W4 |# F6 I" C
为类重载new运算符# z; _0 P4 ~0 K
2 @9 B( H/ K* i0 f1 G3 p. _
B. ' C7 Q+ c7 `/ B5 a( P9 \7 u& O
为类添加delete运算符" V$ q+ P) v. f/ d8 [7 }
0 _% P2 D0 c3 m5 u3 BC. # l$ P, ]3 t" X5 y% @ u
为类添加析构函数,在析构函数中释放资源
- v5 n1 l- e# Q3 c' |5 p9 b' j% e1 M: i$ Q# [! J8 W
D.
: e- e" r7 @ f; o为类实现IDisposable接口,并实现Dispose方法,在该方法中释放资源
) j3 F. r6 H; A
- s( |) p ^8 b* T" K 满分:5 分
4 S$ c" W7 I9 j9.
% D% s# }" `0 K3 X9 b9 T3 `% ]如有定义:
, q6 ]! P; J8 Z4 t. Z4 Y3 K) m8 U4 s3 [2 r, Y( ~- d9 g8 M
class class1
' @2 n; u/ Q) v8 S5 a% N: W( m
+ b% h+ Y" A4 ~2 N{ - N8 G2 R: y/ P1 X0 v, b
7 A9 \ C- |; f9 N! V- A
Public virtual void test(){}
* @; t& P( F7 v/ Y0 L& L0 g0 k$ w6 ?6 x8 Y4 v* I& X6 b
}) `0 w/ q) p& a$ U* d5 m: E
. u8 \0 |8 k! x) o$ X Y. t
Class class2: class1
; I- S( X `0 K! v9 I2 i+ E5 L4 ?6 h. v+ _. q
{
8 d" s& a! ]3 Y# p N% |5 ]) v5 g/ h* r; F# {" S/ B8 }; a
Public overrice void test(); |7 N$ _) O9 |- S
0 z9 p0 F* B6 ?$ m U+ ]/ R {
! n; ~$ Z# o$ N1 A% B& ]4 C
" z1 T' O0 |! s3 o* _ Console.Write(“class2”);
0 r- f6 D6 x' X) J% ^% C0 a' t) r( ?
* f% I$ M# t W: J7 A }, f: L3 i9 y$ e& Q1 c& O; q. r
) R& d& D* _. l2 u' f4 G}( ^ n2 ?2 P4 W) _2 Z
9 y3 J0 h8 f" ?
Class class3: class2' B/ d& A' j9 q% Q" l% Z' g
1 ~4 t8 s, C( c6 ^; j& T5 `
{
: l0 q) L h9 ` {' J9 x
0 [0 h( z- x7 Y' o0 E% @ Public override void test()
3 A3 ^6 S; ^) s
% \* g( v4 i. m1 a3 ~# _{
. } l# O: P6 Y& @) F
+ k( t; w c2 v4 h+ G5 d# Q3 } Console.Write(“class3”);
$ r5 g/ f4 R u! S" J% [7 T( k: A" d( |5 D8 z
}
" R8 _$ v' w4 M2 `( V1 y7 h
5 D- D$ I8 |9 ]' U4 E6 o}7 W4 ~# l& J7 ^4 O7 O2 z
1 S5 t7 s4 G/ ^: }6 r4 O/ x* q7 t
则下列语句的输出是什么?
5 q* A* O% `% q2 P) n% `; \1 n. Q
& Y: i: f$ R5 Z3 ^& WClass2 x = new class3(); x.test();
# z+ [2 X* q1 W1 L4 R( j8 y. }! W0 t3 }5 j
" \: {/ d& [' _) V/ M从抽象类派生类的规则8 [! }! y& o* T' L0 m) O% g$ V
A.
% p) w$ t- }; [; dclass3 class2: u' C9 ^ {" Q; ~1 h. C: d
+ a9 G) {, B0 |. ^% `2 E4 N2 c& }B.
7 B) @$ F3 D0 c8 P: Yclass3
8 e+ d S5 V- E
/ W4 S1 p" @3 Q" kC. 3 i- A! J4 R: E7 c" F
class2 class3
. T% B4 n5 ?8 \! G- O) `# ?/ l- n- i# q7 D5 b& @8 a/ v
D. * y. d" M+ F9 ?% m0 G# u
class23 a9 ], ?6 x5 r$ d& t
" h' I1 E0 D! e! ]8 }" o) s3 \ 满分:5 分. d$ @+ V/ \! K& W4 {8 F9 ~
10.
( r. ]/ E3 t l; y; d M' |% ]在类的外部可以被访问的成员是: i a3 s; O- @3 e: b
6 r* O( n9 v7 D! S+ [- v
A.
7 \! \" c& d9 [; r) hpublic成员
3 K! D- V! b! Q3 ]- h; B/ e9 q" p; p T2 b5 L* w
B.
' U7 f% C* x5 |) Eprivate成员
- t4 k+ v; t! g8 G2 }) ^
6 \! l6 Y y: C `C.
i; W5 X& X4 ^1 A. O7 \& Aprotected成员( M \2 _5 o y
8 _( p! d& \& {% AD.
- X' n u, X( i4 Iprotected internal成员! P/ Q% a p8 d
: H- [# \' w9 g4 N1 _- H
满分:5 分 & O1 N4 @/ V) [" D" E
' j' P. M- F( p3 l: o二、判断题(共 10 道试题,共 50 分。)V 1.
& u$ T7 K* e& x" o( l' g" C- ^在检查状态图的完整性和一致性时,只要是没有前驱或后继的状态,则表明发现了一个错误。5 b) q' z" O3 L' S7 J8 L, T
* l' u6 J# r7 E4 W# ?9 d o9 F
A. 错误, I9 n/ l/ @% e; M" T* _
B. 正确& t0 l( J) B' ~# R
满分:5 分
) e! q) D& {! W' J" j2.
# Y" ^$ u5 u8 t* {抽象类不可以被实例化。
+ D- D. l o$ y; j0 Y/ |
7 L [8 r1 c+ ^& y: R# @A. 错误/ i' ]1 c( R' ^3 A) W% n4 j0 ]
B. 正确
) Q+ c' ~& y1 y- X! p" g 满分:5 分
$ D6 R, \- z9 y `1 [# e p3.
( e" C1 Q% X, Q7 d* `2 R( Q* X软件危机是开发软件的开发工具功能不强造成的。
8 i4 k8 j1 ?( r) c; J+ F; G3 r$ K) n5 F' O
A. 错误5 e& d" I4 N9 A% O) t" X
B. 正确
9 L' L( x- Y, M& E& w: o 满分:5 分
/ o+ y4 i" _% F: |9 E; k0 }8 }8 T4. $ Y$ m. S# W$ Y2 p
在面向对象方法中,由于对象中的数据以及对数据的操作是封装的,所以对某一类对象的修改一般只涉及该类,通常不会对整个系统造成很大影响。6 F. G5 N; k5 S1 ?
. g+ ^( O( W& X; F0 S" iA. 错误3 V9 ]" S7 C* o0 Q7 @
B. 正确
. T5 n% B& g' z+ j S+ I 满分:5 分/ ~' K) ^7 _ `+ D% z+ c! e0 R: C
5.
) C" C0 {/ @+ f& d&&是位运算符,表示按位与运算,&是逻辑运算符,表示逻辑与运算。
" ~. C; ]# k+ x3 H
9 i8 M5 \5 ]0 AA. 错误' h1 p; f$ Y$ b9 W6 Y
B. 正确
: m% {( }3 n7 R, e) A 满分:5 分
4 }5 T D* |3 n4 v6.
8 A; b2 Q; c! z5 o, S- @! Q实例属性和静态属性都是被允许访问的吗?
( q7 R: J! a4 K
h: G* W- a' A/ rA. 错误
+ @- f8 ?$ ]3 E1 d0 |B. 正确
, s3 G; p) |, X3 s 满分:5 分
# k' t4 \7 V$ x- k, |3 q7.
$ x. i. Q0 `8 E3 ^$ i& _6 ~在面向对象设计中,抽象应该依赖于细节,细节不应该依赖于抽象。4 [+ E+ y9 Z: c( H3 q
/ M7 `6 A( @# ?4 VA. 错误/ p3 m0 r& e+ G
B. 正确( [ F$ I) s. |: ?( D: ^7 R
满分:5 分2 @6 U# {8 c! ?0 K6 V
8. 6 G3 x2 u ~1 a$ j/ X
当创建派生类对象时,先执行基类的构造函数,后执行派生类的构造函数。
n) v! l0 P) z1 |% U( g" I! Y7 l$ s7 \( P) ^
A. 错误! T5 V6 g+ _$ f
B. 正确6 R" u% I# H. g" c' f: r
满分:5 分. m7 y! i# c" `' R$ V; Y
9.
. R. T6 L0 \- Z" ]3 i7 F面向对象(Object-Oriented,OO)将数据和对数据的操作作为一个相互依赖,不可分割的整体,采用了数据抽象和信息隐蔽技术。
4 c( G+ `$ ^. N7 U$ @2 l) Z- {1 Z' v6 l( B
A. 错误
( t7 P6 D3 S0 VB. 正确/ ]. H7 z- y9 N T+ `, O
满分:5 分( X w, O0 a( p) i. s: W
10. ! v7 l* v [( ]! i! M' S" }
类和对象的区别就是,类是对象的实例,而对象则是类的抽象。
/ L5 d& x* l! s H( S0 O2 V. z. M) U
' \& s! k, K! X# M' s2 vA. 错误0 Z4 G! q3 P. E/ S9 o1 p# B
B. 正确
; m$ Q! v" A) w/ L# T* |$ g/ U" | 满分:5 分 7 ?% t6 A6 L4 P6 o/ w$ y# R+ W
* o# U* B" J% l
|
|