чаму клас можа рэалізаваць некалькі інтэрфейсаў?

Гэта адзінае пытанне аб інтэрфейсах ў ААП я не магу здацца, каб цалкам растлумачыць. Так зноў жа, чаму ў ААП можа класа рэалізаваць некалькі інтэрфейсаў?

Калі вы можаце прывесці некалькі прыкладаў, якія былі б выдатна. загадзя дзякую.

2

8 адказы

<�Моцны> канцэптуальны прыклад </моцны>

Як я думаю пра некалькі інтэрфейсаў інтэрфейс, як дзеяслоў або прыметнік, і клас як прадмет.

Тыгр можа працаваць, так што Тайгер клас можа рэалізаваць Runnable інтэрфейс .

Тыгр можа ёсць, так што Тайгер клас можа рэалізаваць Ядомыя інтэрфейс .

Бо асобнік класа можа мець розныя мадэлі паводзінаў, мы маглі б мець розныя адпаведныя інтэрфейсы.

<�Моцны> рэалістычны прыклад </моцны>

java.util Class HashMap

It implements Serializable, Cloneable, Map

Усе інтэрфейсы з'яўляюцца характарыстыкамі класа HashMap.

8
дададзена
добра, што тлумачыць гэта даволі па-чартоўску добра. дзякуй кучы.
дададзена аўтар user1664427, крыніца

<�Моцны> канцэптуальны прыклад </моцны>

Як я думаю пра некалькі інтэрфейсаў інтэрфейс, як дзеяслоў або прыметнік, і клас як прадмет.

Тыгр можа працаваць, так што Тайгер клас можа рэалізаваць Runnable інтэрфейс .

Тыгр можа ёсць, так што Тайгер клас можа рэалізаваць Ядомыя інтэрфейс .

Бо асобнік класа можа мець розныя мадэлі паводзінаў, мы маглі б мець розныя адпаведныя інтэрфейсы.

<�Моцны> рэалістычны прыклад </моцны>

java.util Class HashMap

It implements Serializable, Cloneable, Map

Усе інтэрфейсы з'яўляюцца характарыстыкамі класа HashMap.

8
дададзена
добра, што тлумачыць гэта даволі па-чартоўску добра. дзякуй кучы.
дададзена аўтар user1664427, крыніца

Першае, гэта Java не падтрымлівае множны ўспадкоўванне, такім чынам, вы не можаце падоўжыць два класа адначасова. Тым не менш, Java падтрымлівае рэалізацыю некалькіх інтэрфейсаў. Прыклад, прыведзены Mingyu здаецца ідэальным для мяне.

1
дададзена

Першае, гэта Java не падтрымлівае множны ўспадкоўванне, такім чынам, вы не можаце падоўжыць два класа адначасова. Тым не менш, Java падтрымлівае рэалізацыю некалькіх інтэрфейсаў. Прыклад, прыведзены Mingyu здаецца ідэальным для мяне.

1
дададзена

інтэрфейсы ў асноўным абстрактныя (вядома, не па вызначэнні, проста кажучы), таму ўсе метады павінны быць рэалізаваны ў канкрэтных падклас, такім чынам, мы пазбягаем смяротнага алмаза смерці, падтрымліваючы множны ўспадкоўванне такім чынам, што сам па сабе з'яўляецца адказам на рэалізацыя множнага інтэрфейсу будзе дазволена.

Ёсць шмат іншых ужыванняў таксама, але ў сувязі з вышэй тлумачэннямі, там не якая-небудзь іншая прычына, каб абмежаваць паняцце множнай рэалізацыі .... наколькі мне вядома.

1
дададзена

інтэрфейсы ў асноўным абстрактныя (вядома, не па вызначэнні, проста кажучы), таму ўсе метады павінны быць рэалізаваны ў канкрэтных падклас, такім чынам, мы пазбягаем смяротнага алмаза смерці, падтрымліваючы множны ўспадкоўванне такім чынам, што сам па сабе з'яўляецца адказам на рэалізацыя множнага інтэрфейсу будзе дазволена.

Ёсць шмат іншых ужыванняў таксама, але ў сувязі з вышэй тлумачэннямі, там не якая-небудзь іншая прычына, каб абмежаваць паняцце множнай рэалізацыі .... наколькі мне вядома.

1
дададзена

Java class cannot extend multiple classes because of diamond ♦ problem. Diamond ♦ problem occurs due of constructor chaining. Constructor is not present in Interface so no diamond ♦ problem will occur if we implement multiple interfaces. That's why Java class can implement multiple interfaces.

1
дададзена

Java class cannot extend multiple classes because of diamond ♦ problem. Diamond ♦ problem occurs due of constructor chaining. Constructor is not present in Interface so no diamond ♦ problem will occur if we implement multiple interfaces. That's why Java class can implement multiple interfaces.

1
дададзена