1
00:00:01,160 --> 00:00:03,680
Ciao, questa è la radio.

2
00:00:03,820 --> 00:00:07,730
Ora esaminiamo l'ereditarietà multipla nella lezione precedente.

3
00:00:07,760 --> 00:00:12,920
Abbiamo detto che l'ereditarietà multipla potrebbe aiutarci a risolvere i requisiti tecnici discussi in

4
00:00:12,920 --> 00:00:14,100
quella particolare lezione.

5
00:00:15,850 --> 00:00:22,220
Quella eredità multipla che possiamo avere una superclasse è una classe di baseball come prima e l'altra è

6
00:00:22,220 --> 00:00:30,180
un nuovo ultimo astratto chiamato shippable che ha l'abstract che ottiene i dati degli articoli e il processo di book bookmark bookable sul

7
00:00:30,350 --> 00:00:36,800
bookable Walmsley per lo più solo ai segnalibri di classe solo così link e le classi di libri

8
00:00:36,800 --> 00:00:40,810
sono necessarie per implementare il metodo di classificazione dell'oggetto get.

9
00:00:41,000 --> 00:00:47,210
Man mano che estendono una nuova classe condivisa in questo modo, soddisfiamo i requisiti di cui abbiamo discusso in precedenza.

10
00:00:47,210 --> 00:00:52,490
Ecco come il protocollo comune sotto forma di merda di una classe su come implementazioni del metodo.

11
00:00:52,610 --> 00:00:55,310
Solo in quelle classi dove conta.

12
00:00:55,550 --> 00:00:58,900
Ecco come l'ereditarietà multipla può risolvere un problema.

13
00:00:59,120 --> 00:01:07,100
Ma si può ricordare che in Java possiamo estendere solo una superclasse che gocciola e che i backcross non possono

14
00:01:07,130 --> 00:01:10,260
estendere sia la condivisibile che la Brookbank.

15
00:01:10,460 --> 00:01:13,320
Questo è che possono estendere solo uno di loro.

16
00:01:13,340 --> 00:01:20,240
Ciò che significa è che il dollaro non supporta l'ereditarietà multipla e non supporta l'ereditarietà

17
00:01:20,240 --> 00:01:24,850
multipla in quanto potrebbe essere un problema chiamato alfabeto diamante.

18
00:01:25,250 --> 00:01:32,390
Vediamo che questo famigerato problema sta per capire abbastanza bene il dimero mortale che è semplicemente quel

19
00:01:32,390 --> 00:01:33,800
problema dei diamanti.

20
00:01:33,800 --> 00:01:38,770
Consideriamo questo diagramma di classe che incorpora l'ereditarietà multipla.

21
00:01:38,810 --> 00:01:45,410
Sappiamo che la classe dei segnalibri definisce il metodo astratto facilmente eleggibile che viene sovrascritto sia nel

22
00:01:45,410 --> 00:01:48,070
processo di film che di libro.

23
00:01:48,080 --> 00:01:54,740
Prendiamo anche in considerazione questa nuova classe chiamata film e libro che estende sia il film che il libro

24
00:01:54,740 --> 00:02:01,400
che sarebbe un film di ereditarietà multiple e la classe di libri rappresenta fondamentalmente un film basato su

25
00:02:01,400 --> 00:02:06,000
un libro come nel caso di The Godfather o di Harry Potter.

26
00:02:06,110 --> 00:02:08,770
Quindi è fondamentalmente un nuovo tipo di marchio di libro.

27
00:02:08,990 --> 00:02:14,900
E in realtà gli uomini non hanno mai una tale classe nel nostro sistema, ma sono introdotti solo per

28
00:02:14,900 --> 00:02:16,460
il gusto di questa discussione.

29
00:02:16,520 --> 00:02:21,210
Quindi qui il under-class del cinema non sa che cosa è giusto per me e non ha importanza.

30
00:02:21,980 --> 00:02:28,130
Quindi la domanda è quale versione del metodo eleggibile adatto ai bambini orientali è ereditata dal film

31
00:02:28,130 --> 00:02:33,500
e prenotarci non erediterebbe l'arte del moto oceanica e del cinema e prenotarci.

32
00:02:33,680 --> 00:02:40,720
E la risposta è che il linguaggio di programmazione deve supportare alcune regole complicate per affrontare questa ambiguità.

33
00:02:41,180 --> 00:02:49,580
Java che conosciamo è progettato per essere semplice, quindi ho osservato questo problema evitando completamente l'ereditarietà multipla.

34
00:02:49,670 --> 00:02:55,970
Cioè non puoi avere una classe come film e libri che si estendono comprati film e libri come puoi

35
00:02:55,970 --> 00:02:58,710
vedere l'albero ereditario ha una forma a diamante.

36
00:02:58,790 --> 00:03:00,990
Una classe che estende Google dice.

37
00:03:01,190 --> 00:03:04,600
Ed entrambi estendono la stessa classe base.

38
00:03:04,650 --> 00:03:09,960
Questo è il motivo per cui questo problema viene definito come il problema del demone.

39
00:03:09,970 --> 00:03:13,820
Ora ecco un'illustrazione del problema di Biman a causa dello stato condiviso.

40
00:03:13,830 --> 00:03:17,510
Quello che abbiamo appena discusso era dovuto a un comportamento condiviso.

41
00:03:17,550 --> 00:03:24,300
Un segnalibro di una classe base definisce una variabile di istanza che viene inizializzata con un ereditario di un libro di classi

42
00:03:24,360 --> 00:03:24,900
definito.

43
00:03:24,900 --> 00:03:32,210
Sono d'accordo inizializza come fa mentre la classe moey reinizializza come faccio 50.

44
00:03:32,460 --> 00:03:38,570
Quindi, ancora una volta la domanda è quale versione di I sarebbe ereditata dalla classe di film e libri.

45
00:03:38,610 --> 00:03:44,780
Quindi questa è l'ambiguità, quindi il dollaro non supporta l'ereditarietà multipla.

46
00:03:44,780 --> 00:03:49,950
In tal caso, come risolveremo il puzzle che abbiamo visto nella lezione precedente.

47
00:03:49,970 --> 00:03:56,930
È così come possiamo ottenere che l'item lo abbia fatto solo in un libro su classi vaganti, nello stesso periodo

48
00:03:56,940 --> 00:04:03,830
in cui definiamo il protocollo di coalman e per questo possiamo usare le interfacce che studieremo in seguito.

49
00:04:03,960 --> 00:04:07,150
Ed è una funzionalità orientata agli oggetti molto importante.

50
00:04:07,160 --> 00:04:07,550
Grazie.
