1、对象的初始化
: f0 a6 D% L) H& M
( X3 Q) i- d; n' @9 [(1)风止态对象的初始化 1 c) ~0 k* p8 m+ s
$ P; g& d4 a7 L4 H8 a在建树对象时,对象地址类的所稀有据成员会首前进前辈行初始化。
: V/ |7 N% P! C, b3 ]5 R1 }$ j ( Z1 M, a5 U/ t' N) R
根基类型:int型,初始化为0。 9 A* r- G; T1 y( D
* S, S% ^& \' E9 }: y- c如不美观为对象:这些对象会按挨次初始化。
3 X7 F+ w2 u8 @8 A4 ~ Q) e9 j9 N
2 G' y/ X4 U2 R: j4 ?! R※在所有类成员初始化完成之后,才挪用本类的机关体例建树对象。
0 C3 |7 Y3 h4 L1 \0 y
" I& z) i. L1 S机关体例的浸染就是初始化。
F/ A4 D" [5 k$ s; o9 S ^' P. A5 g
- k$ I+ I8 l, W7 G; \) i& F6 B(2)静态对象的初始化 O" ?7 d3 z( o- |. e
$ k! I; H% B, s轨范中主类的静态变量会在main体例执行前初始化。 3 v' V/ i; i: w5 V8 q) n. N# N+ z q
& d4 ~& A, Q `( t$ M: D% G1 F不仅第一次建树对象时,类中的所有静态变量都初始化,而且第一次访谒某类(注重此时未建树此类对象)的静态对象时,所有的静态变量也要按它们在类中的挨次初始化。 ! z2 a! y# d; h1 K4 v. O' {4 Y
. z/ q$ f+ n q, Q6 i
2、担任时,对象的初始化过程 1 l* E" Z2 k/ Y& u/ L
1 F& {: ^% b* G. x$ c
(1)主类的超类由高到低按挨次初始化静态成员,无论静态成员是否为private。
g G# T6 r; E, I w* `3 ~% s# e' v0 p- o
(2)主类静态成员的初始化。
4 Z' J& V. l. [8 a
7 Q1 |. E' w4 u8 @% k(3)主类的超类由高到低进行默认机关体例的挪用。注重,在挪用每一个超类的默认机关体例前,前进前辈行对此超类进行风止态对象的初始化。
6 t2 o% E+ A( E8 y3 d2 N. w- i
9 l3 C" L8 R! @3 _(4)主类风止态成员的初始化。 3 j- @" M) q9 F+ `+ s
8 m3 V3 B" c4 G/ d: q: X(5)挪用主类的机关体例。
7 i! m# j! B5 T- Q 6 {& P3 ], m* W
3、关于机关体例
5 H* R+ Z U6 K! q/ f* S
, k; {; T& C! H- ~* B(1)类可以没有机关体例,但如不美观有多个机关体例,就应该要有默认的机关体例,否则在担任此类时,需要在子类中显式挪用父类的某一个非默认的机关体例了。 : {5 o3 f. `* N5 a1 f; E
; Q: N7 \6 }/ k0 F* [(2)在一个机关体例中,只能挪用一次其他的机关体例,而且挪用机关体例的语句必需是第一条语句。 y' ~( u2 |; T% a5 N0 R
7 V, H; V' a& t% I4、有关public、private和protected 4 [! l, U7 U8 W0 q
7 G/ z, A* o/ t6 @5 n2 M0 N
(1)无public润色的类,可以被其他类访谒的前提是:a.两个类在统一文件中,b.两个类在统一文件夹中,c.两个类在统一软件包中。 3 ]& ~: q' D2 V; y4 R
& P2 k- W0 `$ X3 H; L4 |8 T' B(2)protected:担任类和统一软件包的类可访谒。 $ ~0 I" E- {6 {9 Q" j/ e0 E
7 @$ L }! X* N! L5 h(3)如不美观机关体例为private,那么在其他类中不能建树该类的对象。
% ?( X: E( `7 c# _1 t
; H- ~$ Y9 \: [, J- i. W5、抽象类
# s: J' U! @" b5 M. C6 J, F0 A# d7 v
8 j0 B7 i/ h' P(1)抽象类不能建树对象。 9 X* w. J0 s* T0 f9 _5 V/ [1 D
2 ]. g6 J+ f2 n! ?, C a5 ^(2)如不美观一个类一一个体例为抽象体例,则这个类必需为abstract抽象类。
5 B* ^$ w' X+ @0 J% s h" E! S 2 V% ^# K0 R" F' R
(3)担任抽象类的类在类中必需实现抽象类中的抽象体例。 % k0 N9 [3 e; b0 C/ n9 M5 o9 b
" T7 y& _# ~8 y! N& Y; W5 d
(4)抽象类中可以有抽象体例,也可有风度象体例。抽象体例不能为private。
_0 A0 N0 L2 |9 \8 V8 v 0 R2 R3 K8 p% y9 M1 u* _( o. j
(5)借居担任抽象类的类可以不给出抽象体例的界说。 |