មាតិកា[លាក់][បង្ហាញ]
- 1. តើកម្មវិធីតម្រង់ទិសវត្ថុជាអ្វី?
- 2. ហេតុអ្វីបានជា OOPs ចាំបាច់?
- 3. តើគោលការណ៍ OOPS ផ្តល់អត្ថប្រយោជន៍អ្វីខ្លះ?
- 4. តើអ្វីជាសសរស្តម្ភនៃគោលគំនិត OOPs?
- 5. តើថ្នាក់ជាអ្វី?
- 6. តើវត្ថុជាអ្វី?
- 7. តើអ្វីជាដែនកំណត់របស់ OOPs?
- 8. តើមរតកគឺជាអ្វី?
- 9. តើអ្វីជា encapsulation ជាក់លាក់?
- 10. អ្វីទៅជា polymorphism?
- 11. តើអ្វីជាអរូបីពិតប្រាកដ?
- 12. តើអ្វីទៅជាវិធីសាស្ត្រផ្ទុកលើសចំណុះ?
- 13. តើអ្វីទៅជាការបដិសេធដោយវិធីសាស្រ្ដ?
- 14. តើ superclass ជាអ្វី?
- 15. តើថ្នាក់រងគឺជាអ្វី?
- 16. តើអ្វីជាប៉ូលីម័រហ្វីសឋិតិវន្ត?
- 17. តើអ្វីជាប៉ូលីម័រហ្វីសថាមវន្ត?
- 18. ពិពណ៌នាអំពីសញ្ញាណនៃ Constructor ។
- 19. តើអ្វីទៅជាការកែប្រែការចូលដំណើរការពិតប្រាកដ?
- 20. តើអ្វីពិតប្រាកដជាអ្នកបំផ្លាញ?
- 21. តើមរតកកូនកាត់ជាអ្វី?
- 22. តើអ្វីជាមរតកតាមឋានានុក្រមច្បាស់លាស់?
- 23. តើមរតកមានគុណវិបត្តិអ្វីខ្លះ?
- 24. តើអ្វីជាករណីលើកលែងពិតប្រាកដ?
- 25. តើការដោះស្រាយករណីលើកលែងជាអ្វីពិតប្រាកដ ហើយតើវាមានអត្ថប្រយោជន៍អ្វីខ្លះ?
- 26. តើមុខងារនិម្មិតជាអ្វី?
- 27. តើមុខងារមិត្តជាអ្វី?
- 28. តើការប្រមូលសំរាមជាអ្វី?
- 29. តើការភ្ជាប់គ្នាជាអ្វី?
- 30. តើភាពស្អិតរមួតគឺជាអ្វី?
- 31. ពិពណ៌នាអំពីប្លុកសាកល្បង/ចាប់។
- 32. ពិពណ៌នាអំពីប្លុកចុងក្រោយ។
- 33. តើអ្វីជាចំណុចប្រទាក់ពិតប្រាកដ?
- 34. តើសមាសភាពជាអ្វី?
- 35. តើអ្វីទៅជាការច្រវាក់អ្នកសាងសង់?
- សន្និដ្ឋាន
គំរូនៃការសរសេរកម្មវិធីដ៏មានឥទ្ធិពលបំផុតមួយត្រូវបានគេហៅថា OOPs ឬកម្មវិធីតម្រង់ទិសវត្ថុ។ ជំនួសឱ្យមុខងារ និងដំណើរការ វាសង្កត់ធ្ងន់លើថ្នាក់ និងវត្ថុ។
គោលបំណងចម្បងរបស់វាគឺដើម្បីភ្ជាប់ទិន្នន័យ និងរបស់ផ្សេងៗ ដើម្បីឱ្យវាងាយស្រួលជាងក្នុងការធ្វើការជាមួយពួកគេ។ វត្ថុនីមួយៗនៅក្នុង OOPs ត្រូវបានបង្កើតឡើងដោយកូដក្នុងទម្រង់បែបបទ ឬវិធីសាស្រ្ត និងទិន្នន័យក្នុងទម្រង់ជាវាល។
ភាសាដូចជា C++, Objective C, Python, Perl, និង Java គឺជាភាសាដែលពេញនិយមបំផុតមួយចំនួន ភាសាសរសេរកម្មវិធី.
វាជារឿងសំខាន់ក្នុងការយល់ដឹងបន្ថែមអំពីបញ្ហានេះ ចាប់តាំងពីសំណួរសំភាសន៍គឺជារឿងធម្មតាបំផុត។ ក្រុមហ៊ុនភាគច្រើនកំពុងស្វែងរកវិស្វករដែលស៊ាំនឹងវិធីសាស្រ្ត និងគំរូតម្រង់ទិសវត្ថុ។ ដូច្នេះ បើអ្នកមានបំណងចូលរួមសម្ភាសន៍ អ្នកត្រូវតែយល់ច្បាស់ពីគំនិត OOP។
សំណួរសំភាសន៍កម្មវិធីតម្រង់ទិសវត្ថុផ្សេងៗពីកម្រិតចាប់ផ្តើមរហូតដល់កម្រិតអ្នកជំនាញនឹងត្រូវបានបង្ហាញនៅក្នុងការប្រកាសនេះ។ ដូច្នេះអ្នកអាចឆ្លងផុតកម្រិតនៃការសម្ភាសន៍ណាមួយ និងធានាបាននូវតំណែងក្នុងក្តីស្រមៃរបស់អ្នក។
1. តើកម្មវិធីតម្រង់ទិសវត្ថុជាអ្វី?
ការសរសេរកម្មវិធីដែលតម្រង់ទិសវត្ថុ (OOPs) គឺផ្អែកលើវត្ថុជាក់ស្តែង ជាជាងគ្រាន់តែជាមុខងារ និងដំណើរការប៉ុណ្ណោះ។ ថ្នាក់ត្រូវបានបង្កើតឡើងសម្រាប់ផលិតផលបុគ្គល។
ការទទួលមរតក ភាពពហុនិយម និងការលាក់បាំង គឺជាឧទាហរណ៍នៃគំនិតពិភពលោកពិត ដែល OOPs បញ្ចូលទៅក្នុងកម្មវិធី។ វាក៏ធ្វើឱ្យវាអាចភ្ជាប់ទិន្នន័យ និងកូដផងដែរ។
2. ហេតុអ្វីបានជា OOPs ចាំបាច់?
មានហេតុផលជាច្រើនដែល OOPs ពេញចិត្ត ទោះជាយ៉ាងណាក៏ដោយ ខាងក្រោមគឺសំខាន់បំផុត៖
- OOPs អនុញ្ញាតឱ្យមនុស្សងាយយល់អំពីកម្មវិធី ទោះបីជាពួកគេមិនស៊ាំនឹងការអនុវត្តក៏ដោយ។
- អូ៎ កែលម្អការអានកូដ ភាពអាចយល់បាន និងការរក្សាបានដោយកត្តាដប់។
- ដោយប្រើ OOPs សូម្បីតែកម្មវិធីដ៏ធំបំផុតអាចត្រូវបានសាងសង់ និងគ្រប់គ្រងយ៉ាងសាមញ្ញ។
3. តើគោលការណ៍ OOPS ផ្តល់អត្ថប្រយោជន៍អ្វីខ្លះ?
- OOPS វត្ថុសរសេរកម្មវិធីក្លែងធ្វើវត្ថុពិភពលោកជាក់ស្តែង កាត់បន្ថយភាពស្មុគស្មាញ និងបង្កើនភាពច្បាស់លាស់នៃកម្មវិធី។
- វត្ថុអាចត្រូវបានប្រើប្រាស់ម្តងហើយម្តងទៀតនៅក្នុងកម្មវិធីជាច្រើន។
- វត្ថុនីមួយៗបង្កើតអង្គភាពដាច់ដោយឡែកដែលប្រតិបត្តិការខាងក្នុងគឺឯករាជ្យពីសមាសធាតុប្រព័ន្ធផ្សេងទៀត។
- តាមរយៈការណែនាំវត្ថុថ្មីមួយចំនួន និងធ្វើបច្ចុប្បន្នភាពវត្ថុដែលមានស្រាប់មួយចំនួន វាអាចបន្ថែមមុខងារថ្មី ឬសម្របខ្លួនទៅនឹងការផ្លាស់ប្តូរលក្ខខណ្ឌប្រតិបត្តិការ។
- ដំណើរការ ឬតំណាងទិន្នន័យរបស់កម្មវិធី OOPs អាចធ្វើការកែតម្រូវតិចតួចបានយ៉ាងងាយស្រួល។
4. តើអ្វីជាសសរស្តម្ភនៃគោលគំនិត OOPs?
ខាងក្រោមនេះជាសសរស្តម្ភសំខាន់ៗរបស់ OOP៖
មរតក។៖ វាអនុញ្ញាតឱ្យថ្នាក់ទទួលបានគុណលក្ខណៈនៃថ្នាក់ផ្សេងទៀត។
Encapsulation៖ នេះត្រូវបានកំណត់ថាជាវត្ថុទ្រព្យដែលលាក់ព័ត៌មានសំខាន់។ វារក្សាទិន្នន័យលាក់កំបាំងពីសមាជិកថ្នាក់។ អ្នកបញ្ជាក់ពិពណ៌នាអំពីរបៀបដែលគុណលក្ខណៈរបស់វត្ថុត្រូវបានចូលប្រើក្នុងកូដ។
ពហុនិយម៖ នេះអនុញ្ញាតឱ្យអ្នកអនុវត្តសកម្មភាពតែមួយតាមវិធីជាច្រើន។ វាត្រូវបានសម្រេចតាមរយៈចំណុចប្រទាក់ ដែលយើងប្រកាសចំណុចប្រទាក់មួយដែលត្រូវបានអនុវត្តជាបន្តបន្ទាប់ជាច្រើនដង។
ទាញយក៖ អ្នកអាចប្រើមុខងារនេះដើម្បីលាក់ព័ត៌មានសំខាន់ៗពីពិភពខាងក្រៅ ហើយបង្ហាញតែការពិតសំខាន់ៗប៉ុណ្ណោះ។
5. តើថ្នាក់ជាអ្វី?
ថ្នាក់គឺជាគំរូដើមដែលបង្កើតឡើងដោយវត្ថុនៅក្នុងរដ្ឋផ្សេងៗ និងមានអាកប្បកិរិយាខុសៗគ្នា។ វាមានវិធីសាស្រ្តមួយចំនួនដែលត្រូវបានចែករំលែកដោយវត្ថុនៅក្នុងថ្នាក់នោះ។
6. តើវត្ថុជាអ្វី?
វត្ថុគឺជាអង្គភាពពិភពពិតដែលបម្រើជាអង្គភាពមូលដ្ឋាននៃ OOPs ដូចជាកៅអី ឆ្មា ឬឆ្កែ។ វត្ថុផ្សេងៗមានរដ្ឋ លក្ខណៈសម្បត្តិ និងសកម្មភាពផ្សេងៗ។
7. តើអ្វីជាដែនកំណត់របស់ OOPs?
- ទំហំគឺធំជាងកម្មវិធីផ្សេងទៀត។
- វាទាមទារឱ្យមានទម្លាប់ខ្លះ។
- ប្រភេទនៃបញ្ហាមួយចំនួនមិនហៅរកវាទេ។
- វាប្រើកម្លាំងពលកម្មច្រើនក្នុងការបង្កើត ហើយបើប្រៀបធៀបទៅនឹងកម្មវិធីផ្សេងទៀត វាដំណើរការយឺតជាង។
8. តើមរតកគឺជាអ្វី?
សញ្ញាណដែលហៅថា មរតក សំដៅលើការចែករំលែកនៃរចនាសម្ព័ន្ធ និងអាកប្បកិរិយាដែលបានបង្កើតឡើងរបស់ថ្នាក់ដោយថ្នាក់ផ្សេងទៀត។ នៅពេលដែលការទទួលមរតកត្រូវបានអនុវត្តទៅថ្នាក់តែមួយ វាត្រូវបានសំដៅថាជាមរតកតែមួយ។ នៅពេលដែលវាអាស្រ័យលើថ្នាក់ជាច្រើន វាត្រូវបានសំដៅថាជាមរតកច្រើន។
9. តើអ្វីជា encapsulation ជាក់លាក់?
គំនិតនៃ OOPs រួមបញ្ចូលការវេចខ្ចប់ផងដែរ។ វាពិពណ៌នាអំពីការលាយបញ្ចូលគ្នានៃទិន្នន័យ និងបច្ចេកទេសរៀបចំទិន្នន័យ។ លើសពីនេះ វាជួយការពារការចូលដោយផ្ទាល់ទៅកាន់ផ្នែកខ្លះនៃវត្ថុមួយ។
10. អ្វីទៅជា polymorphism?
នៅក្នុងភាសា OOP, polymorphism គឺជាគោលគំនិតជាមូលដ្ឋាន។ វាបង្ហាញពីរបៀបដែលថ្នាក់ផ្សេងគ្នាអាចចែករំលែកចំណុចប្រទាក់មួយ។ ថ្នាក់ទាំងនេះសុទ្ធតែមានសមត្ថភាពអនុវត្តចំណុចប្រទាក់តែមួយគត់។
11. តើអ្វីជាអរូបីពិតប្រាកដ?
Abstraction គឺជាគោលគំនិតនៃការសរសេរកម្មវិធីតម្រង់ទិសវត្ថុ (OOPs) ដែលប្រើដើម្បីបង្កើតរចនាសម្ព័ន្ធនៃវត្ថុក្នុងពិភពពិត។ វា "បង្ហាញ" នូវគុណភាពដ៏សំខាន់បំផុត និង "លាក់" ព័ត៌មានខាងក្រៅពីពិភពលោកខាងក្រៅ។ គោលដៅជាមូលដ្ឋាននៃការអរូបីគឺដើម្បីការពារមនុស្សពីព័ត៌មានដែលមិនចាំបាច់។
12. តើអ្វីទៅជាវិធីសាស្ត្រផ្ទុកលើសចំណុះ?
វាអាចទៅរួចសម្រាប់នីតិវិធីពីរឬច្រើនដែលមានឈ្មោះដូចគ្នា។ ទោះជាយ៉ាងណាក៏ដោយ ពួកគេគួរតែមានប៉ារ៉ាម៉ែត្រផ្សេងគ្នា ចំនួនខុសគ្នានៃប៉ារ៉ាម៉ែត្រ ប្រភេទផ្សេងគ្នា ឬទាំងពីរ។ ទាំងនេះត្រូវបានគេស្គាល់ថាជាវិធីសាស្ត្រផ្ទុកលើសទម្ងន់ ហើយលក្ខណៈពិសេសត្រូវបានគេស្គាល់ថាជាវិធីសាស្ត្រផ្ទុកលើសទម្ងន់។
13. តើអ្វីទៅជាការបដិសេធដោយវិធីសាស្រ្ដ?
ការសរសេរកម្មវិធីតម្រង់ទិសវត្ថុ រួមបញ្ចូលគំនិតនៃការបដិសេធវិធីសាស្រ្ត។ វាជាលក្ខណៈភាសាដែលអនុញ្ញាតឱ្យថ្នាក់រង ឬថ្នាក់កូនផ្តល់នូវការអនុវត្តតាមបំណងនៃវិធីសាស្ត្រដែលថ្នាក់ជាន់ខ្ពស់មួយរបស់វា ឬថ្នាក់មេផ្តល់ឱ្យរួចហើយ។
14. តើ superclass ជាអ្វី?
superclass ដែលជារឿយៗគេស្គាល់ថាជាថ្នាក់មូលដ្ឋាន គឺជាប្រភេទនៃ class ដែលដើរតួជាមេនៃ class ឬ class ផ្សេងទៀត។ ជាឧទាហរណ៍ ថ្នាក់រថយន្តមានថ្នាក់រងហៅថា យានជំនិះ។
15. តើថ្នាក់រងគឺជាអ្វី?
ថ្នាក់រងគឺជាថ្នាក់រងនៃថ្នាក់ផ្សេងទៀត។ ជាឧទាហរណ៍ ឡានគឺជាប្រភេទរថយន្តរង ឬថ្នាក់ដែលបានមកពី។
16. តើអ្វីជាប៉ូលីម័រហ្វីសឋិតិវន្ត?
នៅពេលចងក្រង ប្រភេទនៃប៉ូលីម័រហ្វីសដែលគេស្គាល់ថាជាប៉ូលីម័រហ្វីសឋិតិវន្ត (ការចងឋិតិវន្ត) កើតឡើង។ វិធីសាស្រ្តផ្ទុកលើសទម្ងន់ គឺជាប្រភេទនៃប៉ូលីម័រហ្វីសពេលចងក្រង។
17. តើអ្វីជាប៉ូលីម័រហ្វីសថាមវន្ត?
ប្រភេទនៃ polymorphism ដែលត្រូវបានដោះស្រាយក្នុងពេលដំណើរការត្រូវបានគេហៅថា polymorphism ពេលរត់ ដែលត្រូវបានគេស្គាល់ថាជា dynamic polymorphism (ការចងថាមវន្ត)។ ការបដិសេធនៃវិធីសាស្រ្តគឺជាការបង្ហាញពីការរត់ polymorphism ។
18. ពិពណ៌នាអំពីសញ្ញាណនៃ Constructor ។
constructor គឺជា method ជាក់លាក់មួយនៃ class ដែលត្រូវបានហៅដោយស្វ័យប្រវត្តិនៅពេលដែល class instance ត្រូវបានបង្កើត។ នៅពេលអ្នកចូលប្រើ class វាត្រូវបានបង្កើតដោយឈ្មោះដូចគ្នាទៅនឹង class ហើយចាប់ផ្តើមសមាជិកទាំងអស់របស់វា។ លក្ខណៈចម្បងរបស់ constructor មានដូចខាងក្រោម៖
មិនមានប្រភេទត្រឡប់មកវិញសម្រាប់អ្នកសាងសង់ទេ។
អ្នកសាងសង់លើសទម្ងន់អាចធ្វើទៅបាន។
វាមិនត្រូវបានទាមទារដើម្បីបញ្ជាក់អ្នកសាងសង់; the.NET Framework នឹងធ្វើវាដោយស្វ័យប្រវត្តិ។
19. តើអ្វីទៅជាការកែប្រែការចូលដំណើរការពិតប្រាកដ?
នៅក្នុងភាសាដែលតម្រង់ទិសវត្ថុ ពាក្យគន្លឹះគឺជាអ្នកកែប្រែការចូលប្រើ ឬអ្នកបញ្ជាក់ការចូលប្រើ។ វាជួយក្នុងការកំណត់រចនាសម្ព័ន្ធថ្នាក់ វិធីសាស្ត្រ និងភាពងាយស្រួលរបស់សមាជិកផ្សេងទៀត។
20. តើអ្វីពិតប្រាកដជាអ្នកបំផ្លាញ?
Destructor គឺជាវិធីសាស្ត្រមួយសម្រាប់បញ្ចេញនូវធនធានដែលបានកំណត់ទៅវត្ថុមួយ។ នៅពេលដែលវត្ថុមួយត្រូវបានបំផ្លាញ វិធីសាស្ត្រនេះត្រូវបានហៅដោយស្វ័យប្រវត្តិ។
21. តើមរតកកូនកាត់ជាអ្វី?
មរតកកូនកាត់គឺជាប្រភេទនៃមរតកដែលបង្កើតឡើងដោយការលាយបញ្ចូលគ្នានៃទម្រង់ជាច្រើននៃមរតកដូចជាទោល ច្រើន ជាដើម។
22. តើអ្វីជាមរតកតាមឋានានុក្រមច្បាស់លាស់?
ថ្នាក់រងជាច្រើនទទួលមរតកពីថ្នាក់មេនៅក្នុងស្ថានភាពនៃមរតកតាមឋានានុក្រម។ ប្រភេទនៃមរតកដែលថ្នាក់ជាច្រើនចុះពីមេតែមួយ ឬថ្នាក់មូលដ្ឋានត្រូវបានគេស្គាល់ថាជាមរតកឋានានុក្រម។ ឧទាហរណ៍ ថ្នាក់ផ្លែឈើអាចមានថ្នាក់រងដូចជា 'ផ្លែប៉ោម "ស្វាយ" 'ចេក' 'ផ្លែ cherry' ជាដើម។
23. តើមរតកមានគុណវិបត្តិអ្វីខ្លះ?
វាពន្យារ និងធ្វើអោយស្មុគស្មាញដល់ដំណើរការប្រតិបត្តិ។ វាក៏ចាំបាច់ផងដែរក្នុងការប្តូររវាងថ្នាក់ផ្សេងៗ។ ថ្នាក់មេ និងកូនតែងតែត្រូវបានភ្ជាប់គ្នាដោយមិនចេះចប់។
ការកែប្រែកម្មវិធីសិក្សានឹងត្រូវការការកែសម្រួលសម្រាប់ទាំងថ្នាក់មេ និងកូន។ ការទទួលមរតកត្រូវតែអនុវត្តយ៉ាងប្រុងប្រយ័ត្ន បើមិនដូច្នេះទេលទ្ធផលនឹងខុស។
24. តើអ្វីជាករណីលើកលែងពិតប្រាកដ?
ករណីលើកលែងគឺជាឧប្បត្តិហេតុដែលរំខានដល់ប្រតិបត្តិការធម្មតានៃកូដ។ ដើម្បីបន្តការប្រតិបត្តិ អ្នកអាចដោះស្រាយការលើកលែងទាំងនេះនៅក្នុង Java ។ នៅក្នុង Java មានការលើកលែងដែលបានកំណត់ជាមុនជាច្រើនប្រភេទ ហើយការដោះស្រាយករណីលើកលែងត្រូវបានផ្តល់ជូនដើម្បីគ្រប់គ្រងការលើកលែងដែលបានលើកឡើងដោយប្រើប្លុកសាកល្បង។
25. តើការដោះស្រាយករណីលើកលែងជាអ្វីពិតប្រាកដ ហើយតើវាមានអត្ថប្រយោជន៍អ្វីខ្លះ?
វិធីសាស្រ្តដ៏សំខាន់បំផុតនៅក្នុង Java សម្រាប់ដោះស្រាយការបរាជ័យពេលដំណើរការដែលមិនបានរំពឹងទុកគឺការដោះស្រាយករណីលើកលែង។ វាអនុញ្ញាតឱ្យអ្នកគ្រប់គ្រងកំហុសពេលរត់ដែលកើតឡើងកំឡុងពេលដំណើរការកម្មវិធី។
អត្ថប្រយោជន៍នៃការដោះស្រាយករណីលើកលែងរួមមានសមត្ថភាពក្នុងការរក្សាលំហូរកម្មវិធីជាទៀងទាត់ខណៈពេលដែលគ្រប់គ្រងករណីលើកលែង។ ឧទាហរណ៍ ប្រសិនបើកំហុសកើតឡើងនៅក្នុងផ្នែកមួយនៃកម្មវិធីនោះ វានឹងមិនមានផលប៉ះពាល់លើផ្នែកដែលនៅសល់នៃកម្មវិធីនោះទេ ប្រសិនបើយើងដោះស្រាយករណីលើកលែងជាមួយនឹងប្លុកសាកល្បង។
26. តើមុខងារនិម្មិតជាអ្វី?
មុខងារនិម្មិតត្រូវបានរួមបញ្ចូលផងដែរនៅក្នុងមុខងាររបស់ថ្នាក់មេ ហើយត្រូវបានបដិសេធដោយថ្នាក់រង។ ទម្លាប់ទាំងនេះជួយក្នុងការសម្រេចបាននូវដំណើរការពហុមុខងារ។
27. តើមុខងារមិត្តជាអ្វី?
មុខងារមិត្តគឺជាមុខងារដែលជាកម្មសិទ្ធិរបស់ថ្នាក់ ហើយត្រូវបានអនុញ្ញាតឱ្យចូលប្រើទិន្នន័យសាធារណៈ ឯកជន ឬការពាររបស់វា។ ប្រសិនបើមុខងារត្រូវបានកំណត់នៅខាងក្រៅថ្នាក់ នោះវាមិនអាចទៅយកទិន្នន័យនេះបានទេ។ ពាក្យគន្លឹះគ្រប់គ្រងការចូលប្រើជាឯកជន សាធារណៈ និងការពារមិនមានផលប៉ះពាល់លើការប្រកាសជាមិត្តទេ ដែលអាចធ្វើឡើងនៅគ្រប់ទីកន្លែងក្នុងសេចក្តីប្រកាសថ្នាក់។
28. តើការប្រមូលសំរាមជាអ្វី?
ការប្រមូលសំរាម (GC) គឺជាធាតុមួយនៃភាសាសរសេរកម្មវិធីដូចជា C# និង Java ដែលបម្រើជាប្រព័ន្ធសង្គ្រោះការចងចាំ។ ម៉ាស៊ីនប្រមូលសំរាម (GC) គឺជាធាតុផ្សំនៃភាសាសរសេរកម្មវិធីដែលអនុញ្ញាតឱ្យបញ្ចេញទំហំអង្គចងចាំដោយស្វ័យប្រវត្តិសម្រាប់វត្ថុដែលកម្មវិធីលែងប្រើ។
29. តើការភ្ជាប់គ្នាជាអ្វី?
វាសំដៅទៅលើស្ថានភាពដែលថ្នាក់ផ្សេងៗពឹងផ្អែកលើគ្នាទៅវិញទៅមក និងចែករំលែកចំណេះដឹង។ ការតភ្ជាប់ដ៏រឹងមាំកើតឡើងនៅពេលដែលថ្នាក់មួយមានចំណេះដឹងលម្អិតអំពីថ្នាក់មួយផ្សេងទៀត។ អ្នកអាចបញ្ជាក់ភាពមើលឃើញនៃថ្នាក់ វិធីសាស្រ្ត ឬអថេរដោយប្រើឧបករណ៍កែប្រែការចូលប្រើ។ ចំណុចប្រទាក់ត្រូវបានប្រើដើម្បីផ្តល់នូវការភ្ជាប់ខ្សោយ។
30. តើភាពស្អិតរមួតគឺជាអ្វី?
វិធីដែលសមាសធាតុសម្រេចបាននូវសកម្មភាពជាក់លាក់មួយ ត្រូវបានគេសំដៅថាជាភាពស្អិតរមួតរបស់វា។ វិធីសាស្រ្តដ៏រឹងមាំ និងស្អិតរមួតនឹងធ្វើកិច្ចការដែលបានកំណត់យ៉ាងសាមញ្ញ ចំណែកវិធីសាស្ត្រដែលខ្សោយ និងស្អិតរមួតនឹងបែងចែកកិច្ចការតែមួយទៅជាកិច្ចការតូចៗមួយចំនួន ហើយបន្ទាប់មកបំពេញវា។
កញ្ចប់ Java.io មានភាពស៊ីសង្វាក់គ្នា ប៉ុន្តែកញ្ចប់ java.util មិនមែនទេ។
31. ពិពណ៌នាអំពីប្លុកសាកល្បង/ចាប់។
នៅពេលដែលកម្មវិធីជួបប្រទះកំហុសដោយសារតែកូដ ឬទិន្នន័យមិនត្រឹមត្រូវ “ព្យាយាម” និង “ចាប់” បង្ហាញពីរបៀបគ្រប់គ្រងវា។ ប្លុកសាកល្បងគឺជាឈ្មោះនៃផ្នែកនៃកូដនៅពេលដែលមានករណីលើកលែងកើតឡើង។ ប្លុកចាប់ត្រូវបានប្រើដើម្បីចាប់យក និងដោះស្រាយជាមួយករណីលើកលែងពីប្លុកសាកល្បង។
32. ពិពណ៌នាអំពីប្លុកចុងក្រោយ។
ផ្នែកធ្វើការរបស់ពាក្យគន្លឹះនៃកូដត្រូវបានចង្អុលបង្ហាញចុងក្រោយ។ វាកំណត់កូដដែលតែងតែដំណើរការភ្លាមៗបន្ទាប់ពីការសាកល្បង និងប្លុកចាប់ណាមួយ មុនពេលវិធីសាស្ត្រត្រូវបានបញ្ចប់។ ប្លុកចុងក្រោយតែងតែដំណើរការ ថាតើករណីលើកលែងមួយត្រូវបានបោះចោល ឬចាប់បានក៏ដោយ។
33. តើអ្វីជាចំណុចប្រទាក់ពិតប្រាកដ?
ចំណុចប្រទាក់គឺជាការរួមបញ្ចូលគ្នានៃវិធីសាស្ត្រអរូបី និងប្រភេទទិន្នន័យដែលកំណត់ដោយអ្នកប្រើប្រាស់។ ថ្នាក់អនុវត្តចំណុចប្រទាក់ ទទួលមុខងារអរូបីរបស់ចំណុចប្រទាក់។
class តំណាងឱ្យលក្ខណៈសម្បត្តិ និងឥរិយាបទរបស់វត្ថុមួយ ចំណែក interface រួមបញ្ចូលឥរិយាបថដែលថ្នាក់អនុវត្ត។ ចំណុចប្រទាក់តំណាងឱ្យ "អ្វី" ចំណែកថ្នាក់បង្ហាញ "របៀប" ។
34. តើសមាសភាពជាអ្វី?
សមាសភាពអាចត្រូវបានប្រើដើម្បីសម្រេចបាននូវការតភ្ជាប់។ វាបង្ហាញពីការភ្ជាប់វត្ថុដ៏រឹងមាំរវាងវត្ថុអាស្រ័យ និងវត្ថុឯករាជ្យ ផ្ទុយទៅនឹងការប្រមូលផ្តុំ។ វត្ថុដែលពឹងផ្អែកមិនមាននៅក្នុងកាលៈទេសៈនេះទេ ហើយនឹងត្រូវបានយកចេញ ប្រសិនបើវត្ថុមេត្រូវបានលុប។
35. តើអ្វីទៅជាការច្រវាក់អ្នកសាងសង់?
Constructor chaining គឺជាបច្ចេកទេសមួយសម្រាប់ហៅ constructor មួយពី constructor មួយទៀតទាក់ទងនឹង object reference បច្ចុប្បន្ន។ មានជម្រើសពីរ៖
- អ្នកបង្កើតនៅក្នុងថ្នាក់បច្ចុប្បន្នអាចត្រូវបានយោងដោយប្រើពាក្យគន្លឹះ "នេះ" ។
- ពាក្យគន្លឹះ "ទំនើប" នឹងត្រូវបានប្រើដើម្បីហៅអ្នកសាងសង់ពីថ្នាក់មូលដ្ឋាន។
សន្និដ្ឋាន
ការសរសេរកម្មវិធី Object Oriented ចាំបាច់ត្រូវគិតពីរចនាសម្ព័ន្ធនៃកម្មវិធី និងការរៀបចំជាមុន។ ពិនិត្យមើលរបៀបបែងចែកតម្រូវការទៅជាថ្នាក់មូលដ្ឋានដែលអាចប្រើឡើងវិញបាន ដែលអាចត្រូវបានប្រើដើម្បីបង្កើតឧទាហរណ៍នៃវត្ថុ។
សរុបមក ការឱបក្រសោប OOP ផ្តល់នូវភាពប្រសើរឡើង រចនាសម្ព័ន្ធទិន្នន័យ និងអាចប្រើប្រាស់ឡើងវិញបាន ដែលជួយសន្សំសំចៃពេលវេលាក្នុងរយៈពេលយូរ។ សូមមើល ស៊េរីសម្ភាសន៍របស់ Hashdork សម្រាប់ជំនួយក្នុងការរៀបចំសម្ភាសន៍។
សូមផ្ដល់យោបល់