Видео: Жава хэл дээр олон удамшил яагаад дэмжигдээгүйг жишээгээр тайлбарлана уу?
2024 Зохиолч: Lynn Donovan | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2023-12-15 23:50
онд java байхгүй тул ийм зүйл хэзээ ч тохиолдохгүй олон өв залгамжлал . Энд хоёр интерфейс ижил аргатай байсан ч хэрэгжүүлэгч анги нь зөвхөн нэг аргатай байх бөгөөд үүнийг хэрэгжүүлэгч хийх болно. Ангиудын динамик ачаалал нь хэрэгжилтийг бий болгодог олон өв залгамжлал хэцүү.
Жишээ нь Java хэл дээр яагаад олон өв залгамжлалыг дэмждэггүй вэ?
Java олон өв залгамжлалыг дэмждэг зөвхөн интерфейсээр дамжуулан. Анги нь хэдэн ч интерфэйсийг хэрэгжүүлэх боломжтой боловч зөвхөн нэг ангиллыг өргөтгөх боломжтой. Олон удамшлыг дэмждэггүй Учир нь энэ нь үхлийн аюултай алмазын асуудалд хүргэдэг. Та интерфэйсээс ямар ч функц олж авахгүй.
Яагаад C++ олон удамшилыг дэмждэг боловч Java хэл дээр дэмждэггүй вэ? C++ , Нийтлэг lisp болон бусад цөөн хэдэн хэл олон өв залгамжлалыг дэмждэг байхад java үгүй дэмжлэг үзүүлэх тэр. Java зөвшөөрөхгүй олон өв залгамжлал үүнээс үүдэлтэй хоёрдмол байдлаас зайлсхийхийн тулд. Ийм асуудлын нэг жишээ бол алмазын асуудал юм олон өв залгамжлал.
Ийм байдлаар Java-д олон өв залгамжлал гэж юу вэ?
Java олон өв залгамжлалыг дэмждэг интерфэйсээр дамжуулан. Java үгүй олон өв залгамжлалыг дэмждэг Учир нь энэ нь алмазын асуудал үүсгэдэг. Хэрэв анги нь хоёр ба түүнээс дээш ангиас өвлөгдөж байгаа бол түүнийг дуудна олон өв залгамжлал.
Олон удамшлыг жишээгээр тайлбарлах нь юу вэ?
Олон өв залгамжлал нь C++-ийн нэг анги боломжтой онцлог юм өвлөн авах нэгээс олон ангиас. -ийн бүтээгчид өвлөн авсан ангиудыг байгаа тэр дарааллаар нь дууддаг өвлөн авсан . Учир нь жишээ , дараах программд B-ийн байгуулагчийг А-ийн бүтээгчийн өмнө дууддаг.
Зөвлөмж болгож буй:
Жава хэл дээр алмаазан дүрсийг яаж хийх вэ?
Алмазан хэлбэрийг гурвалжин, дараа нь урвуу гурвалжинг хэвлэх замаар бүтээдэг. Үүнийг nested for гогцоо ашиглан хийдэг
Жава хэл дээр параметр дамжуулах гэж юу гэсэн үг вэ?
Java дээр параметр дамжуулах. Утга дамжуулна гэдэг нь арга руу залгах бүрд параметрүүдийг үнэлж, үр дүнгийн утгыг санах ойн хэсэг рүү хуулна гэсэн үг
Яагаад C++ хэл дээр олон өв залгамжлалыг дэмждэг ч Java дээр дэмждэггүй вэ?
C++, Common lisp болон бусад цөөн хэдэн хэл нь олон өв залгамжлалыг дэмждэг бол java үүнийг дэмждэггүй. Жава нь үүнээс үүдэлтэй тодорхой бус байдлаас зайлсхийхийн тулд олон удамшлыг зөвшөөрдөггүй. Ийм асуудлын нэг жишээ бол олон удамшлын үед үүсдэг алмазын асуудал юм
Энгийн жишээгээр C++ хэл дээр заагч гэж юу вэ?
C++ хэл дээрх заагч Заагч нь C++ хэл дээрх өөр хувьсагчийн хаягийг агуулсан хувьсагч юм. Тэд хувьсагчтай адил өгөгдлийн төрөлтэй, жишээ нь бүхэл тоон төрлийн заагч нь бүхэл тоон хувьсагчийн хаягийг, тэмдэгтийн төрлийн заагч нь char хувьсагчийн хаягийг агуулж болно
Яагаад C# хэл дээр олон өв залгамжлал боломжгүй байдаг вэ?
C# нь олон өв залгамжлалыг дэмждэггүй, учир нь тэд C#-д олон өв залгамжлал нэмэх нь хэтэрхий бага ашиг тустай байхад хэтэрхий төвөгтэй байдлыг нэмсэн гэж үзсэн. C# хэл дээр ангиуд нь зөвхөн нэг эцэг эхийн ангиас өвлөхийг зөвшөөрдөг бөгөөд үүнийг ганц өв залгамжлал гэж нэрлэдэг