Разработка компонентов в DELPHI. Вощинская Г.Э. - 9 стр.

UptoLike

Составители: 

ɥɚɫɬɶ ɜɢɞɢɦɨɫɬɢ), ɜ Delphi ɨɩɪɟɞɟɥɟɧɵ ɱɟɬɵɪɟ ɨɫɧɨɜɧɵɟ ɞɢɪɟɤɬɢɜɵ, ɩɪɢ-
ɜɟɞɟɧɧɵɟ ɜ ɬɚɛɥɢɰɟ 2.
ɍɪɨɜɧɢ ɞɨɫɬɭɩɚ ɤ ɩɨɥɹɦ ɢ ɦɟɬɨɞɚɦ ɤɥɚɫɫɚ Ɍɚɛɥɢɰɚ 2
Private
Ʌɢɱɧɵɟ ɇɟɜɢɞɢɦɵ ɜɧɟ ɦɨɞɭɥɹ ɢɥɢ ɩɪɨɝɪɚɦɦɵ, ɜ
ɤɨɬɨɪɨɣ ɤɥɚɫɫ ɨɛɴɹɜɥɟɧ
Protected
Ɂɚɳɢɳɟɧ-
ɧɵɟ
ȼɢɞɢɦɵ ɜɟɡɞɟ ɜ ɦɨɞɭɥɟ, ɜ ɤɨɬɨɪɨɦ ɤɥɚɫɫ ɨɛɴ-
ɹɜɥɹɟɬɫɹ, ɢ ɢɡ ɥɸɛɨɝɨ ɤɥɚɫɫɚ ɩɨɬɨɦɤɚ, ɧɟɡɚɜɢ-
ɫɢɦɨ ɨɬ ɦɨɞɭɥɹ, ɝɞɟ ɤɥɚɫɫ ɩɨɬɨɦɤɚ ɩɨɹɜɥɹɟɬ-
ɫɹ, ɬ. ɟ. ɞɥɹ ɪɚɡɪɚɛɨɬɱɢɤɨɜ ɞɪɭɝɢɯ ɤɨɦɩɨɧɟɧ-
ɬɨɜ. ȼ ɫɟɤɰɢɹɯ Private ɢ Protected
«ɫɤɪɵɜɚɸɬɫɹ» ɞɟɬɚɥɢ ɪɟɚɥɢɡɚɰɢɢ
Public
Ɉɛɳɢɟ Ɉɛɴɟɤɬɵ ɞɚɧɧɨɝɨ ɭɪɨɜɧɹ ɜɢɞɢɦɵ ɜɟɡɞɟ, ɝɞɟ
ɜɨɡɦɨɠɧɚ ɫɫɵɥɤɚ ɧɚ ɤɥɚɫɫ
Published
Ɉɩɭɛɥɢɤɨ-
ɜɚɧɧɵɟ
ɇɟɬ ɧɢɤɚɤɢɯ ɨɝɪɚɧɢɱɟɧɢɣ ɩɨ ɞɨɫɬɭɩɭ.
ɋɜɨɣɫɬɜɚ ɩɨɩɚɞɚɸɬ ɜ ɂɧɫɩɟɤɬɨɪ Ɉɛɴɟɤɬɨɜ
ɜɨ ɜɪɟɦɹ ɩɪɨɟɤɬɢɪɨɜɚɧɢɹ. Ʉɥɚɫɫ ɞɨɥɠɟɧ
ɩɪɨɢɫɯɨɞɢɬɶ ɨɬ TComponent
ɉɨɪɨɠɞɟɧɧɵɣ ɤɥɚɫɫ ɦɨɠɟɬ ɩɟɪɟɦɟɫɬɢɬɶ ɫɜɨɣɫɬɜɚ ɜ ɪɚɡɞɟɥ ɫ ɦɟɧɶ-
ɲɢɦɢ ɨɝɪɚɧɢɱɟɧɢɹɦɢ (protectedɜ public ɢɥɢ ɜ published,
publicɜ published), ɧɨ ɧɟ ɦɨɠɟɬ ɩɟɪɟɦɟɫɬɢɬɶ ɫɜɨɣɫɬɜɨ ɜ ɪɚɡɞɟɥ ɫ
ɛɨɥɶɲɢɦɢ ɨɝɪɚɧɢɱɟɧɢɹɦɢ ɜ ɞɨɫɬɭɩɟ.
Ɉɛɳɟɩɪɢɧɹɬɨ (ɬɚɤ ɫɥɟɞɭɟɬ ɢɡ ɩɪɢɧɰɢɩɚ ɢɧɤɚɩɫɭɥɹɰɢɢ), ɱɬɨ ɜ ɫɟɤɰɢɢ
private ɪɚɫɩɨɥɚɝɚɸɬɫɹ ɨɛɴɹɜɥɟɧɢɹ ɩɨɥɟɣ ɤɥɚɫɫɚ; ɜ ɫɟɤɰɢɢ protected
ɦɟɬɨɞɵ ɱɬɟɧɢɹ-ɡɚɩɢɫɢ ɡɧɚɱɟɧɢɣ ɫɜɨɣɫɬɜ, ɨɛɴɹɜɥɟɧɢɹ ɧɟɨɩɭɛɥɢɤɨɜɚɧɧɵɯ
ɫɜɨɣɫɬɜ; ɜ ɫɟɤɰɢɢ publicɦɟɬɨɞɵ, ɜ ɬɨɦ ɱɢɫɥɟ ɤɨɧɫɬɪɭɤɬɨɪɵ ɢ ɞɟɫɬɪɭɤ-
ɬɨɪɵ, ɢ ɫɜɨɣɫɬɜɚ, ɞɨɫɬɭɩɧɵɟ ɜɨ ɜɪɟɦɹ ɜɵɩɨɥɧɟɧɢɹ; ɜ ɫɟɤɰɢɢ published
ɨɩɭɛɥɢɤɨɜɚɧɧɵɟ ɫɜɨɣɫɬɜɚ.
9
ɥɚɫɬɶ ɜɢɞɢɦɨɫɬɢ), ɜ Delphi ɨɩɪɟɞɟɥɟɧɵ ɱɟɬɵɪɟ ɨɫɧɨɜɧɵɟ ɞɢɪɟɤɬɢɜɵ, ɩɪɢ-
ɜɟɞɟɧɧɵɟ ɜ ɬɚɛɥɢɰɟ 2.

              ɍɪɨɜɧɢ ɞɨɫɬɭɩɚ ɤ ɩɨɥɹɦ ɢ ɦɟɬɨɞɚɦ ɤɥɚɫɫɚ          Ɍɚɛɥɢɰɚ 2
Private         Ʌɢɱɧɵɟ      ɇɟɜɢɞɢɦɵ ɜɧɟ ɦɨɞɭɥɹ ɢɥɢ ɩɪɨɝɪɚɦɦɵ, ɜ
                            ɤɨɬɨɪɨɣ ɤɥɚɫɫ ɨɛɴɹɜɥɟɧ
Protected       Ɂɚɳɢɳɟɧ-    ȼɢɞɢɦɵ ɜɟɡɞɟ ɜ ɦɨɞɭɥɟ, ɜ ɤɨɬɨɪɨɦ ɤɥɚɫɫ ɨɛɴ-
                ɧɵɟ         ɹɜɥɹɟɬɫɹ, ɢ ɢɡ ɥɸɛɨɝɨ ɤɥɚɫɫɚ ɩɨɬɨɦɤɚ, ɧɟɡɚɜɢ-
                            ɫɢɦɨ ɨɬ ɦɨɞɭɥɹ, ɝɞɟ ɤɥɚɫɫ ɩɨɬɨɦɤɚ ɩɨɹɜɥɹɟɬ-
                            ɫɹ, ɬ. ɟ. ɞɥɹ ɪɚɡɪɚɛɨɬɱɢɤɨɜ ɞɪɭɝɢɯ ɤɨɦɩɨɧɟɧ-
                            ɬɨɜ. ȼ ɫɟɤɰɢɹɯ Private ɢ Protected
                            «ɫɤɪɵɜɚɸɬɫɹ» ɞɟɬɚɥɢ ɪɟɚɥɢɡɚɰɢɢ
Public          Ɉɛɳɢɟ       Ɉɛɴɟɤɬɵ ɞɚɧɧɨɝɨ ɭɪɨɜɧɹ ɜɢɞɢɦɵ ɜɟɡɞɟ, ɝɞɟ
                            ɜɨɡɦɨɠɧɚ ɫɫɵɥɤɚ ɧɚ ɤɥɚɫɫ
Published       Ɉɩɭɛɥɢɤɨ-   ɇɟɬ ɧɢɤɚɤɢɯ ɨɝɪɚɧɢɱɟɧɢɣ ɩɨ ɞɨɫɬɭɩɭ.
                ɜɚɧɧɵɟ      ɋɜɨɣɫɬɜɚ ɩɨɩɚɞɚɸɬ ɜ ɂɧɫɩɟɤɬɨɪ Ɉɛɴɟɤɬɨɜ
                            ɜɨ ɜɪɟɦɹ ɩɪɨɟɤɬɢɪɨɜɚɧɢɹ. Ʉɥɚɫɫ ɞɨɥɠɟɧ
                            ɩɪɨɢɫɯɨɞɢɬɶ ɨɬ TComponent

     ɉɨɪɨɠɞɟɧɧɵɣ ɤɥɚɫɫ ɦɨɠɟɬ ɩɟɪɟɦɟɫɬɢɬɶ ɫɜɨɣɫɬɜɚ ɜ ɪɚɡɞɟɥ ɫ ɦɟɧɶ-
ɲɢɦɢ ɨɝɪɚɧɢɱɟɧɢɹɦɢ (protected – ɜ public ɢɥɢ ɜ published,
public – ɜ published), ɧɨ ɧɟ ɦɨɠɟɬ ɩɟɪɟɦɟɫɬɢɬɶ ɫɜɨɣɫɬɜɨ ɜ ɪɚɡɞɟɥ ɫ
ɛɨɥɶɲɢɦɢ ɨɝɪɚɧɢɱɟɧɢɹɦɢ ɜ ɞɨɫɬɭɩɟ.
     Ɉɛɳɟɩɪɢɧɹɬɨ (ɬɚɤ ɫɥɟɞɭɟɬ ɢɡ ɩɪɢɧɰɢɩɚ ɢɧɤɚɩɫɭɥɹɰɢɢ), ɱɬɨ ɜ ɫɟɤɰɢɢ
private ɪɚɫɩɨɥɚɝɚɸɬɫɹ ɨɛɴɹɜɥɟɧɢɹ ɩɨɥɟɣ ɤɥɚɫɫɚ; ɜ ɫɟɤɰɢɢ protected –
ɦɟɬɨɞɵ ɱɬɟɧɢɹ-ɡɚɩɢɫɢ ɡɧɚɱɟɧɢɣ ɫɜɨɣɫɬɜ, ɨɛɴɹɜɥɟɧɢɹ ɧɟɨɩɭɛɥɢɤɨɜɚɧɧɵɯ
ɫɜɨɣɫɬɜ; ɜ ɫɟɤɰɢɢ public – ɦɟɬɨɞɵ, ɜ ɬɨɦ ɱɢɫɥɟ ɤɨɧɫɬɪɭɤɬɨɪɵ ɢ ɞɟɫɬɪɭɤ-
ɬɨɪɵ, ɢ ɫɜɨɣɫɬɜɚ, ɞɨɫɬɭɩɧɵɟ ɜɨ ɜɪɟɦɹ ɜɵɩɨɥɧɟɧɢɹ; ɜ ɫɟɤɰɢɢ published –
ɨɩɭɛɥɢɤɨɜɚɧɧɵɟ ɫɜɨɣɫɬɜɚ.


                                    9