1
00:00:02,170 --> 00:00:04,250
Ciao, questo è il.

2
00:00:04,360 --> 00:00:05,680
E bentornato.

3
00:00:05,680 --> 00:00:12,340
Vediamo rapidamente un costrutto correlato chiamato riferimenti di costruzione che sono simili ai riferimenti di metodo,

4
00:00:13,060 --> 00:00:19,120
i riferimenti di metodo, nessun riferimento a metodi non assegnati a interfacce funzionali.

5
00:00:19,180 --> 00:00:26,380
Allo stesso modo i riferimenti del costruttore come implicano il nome sono riferimenti ai costruttori e sono anche

6
00:00:26,440 --> 00:00:33,650
assegnati costantemente a questo costruttore I riferimenti sono usati per costruire oggetti perché ci sono riferimenti ai costruttori e

7
00:00:33,650 --> 00:00:36,850
questo è ciò che fanno i costruttori.

8
00:00:37,820 --> 00:00:43,640
Sintassi, sia i riferimenti al metodo che i riferimenti del costruttore sono molto simili tra loro.

9
00:00:43,650 --> 00:00:44,810
Riferimenti LIT-MATS.

10
00:00:44,900 --> 00:00:49,360
Abbiamo lo stype di riferimento target che viene poi seguito da un delimitatore.

11
00:00:49,370 --> 00:00:55,120
Le Isole Cook che sono poi seguite dal nome del metodo e dai riferimenti

12
00:00:55,120 --> 00:01:01,340
del costruttore hanno il nome della classe seguito dallo stesso delimitatore che tu chiami, seguito dal nucula.

13
00:01:01,550 --> 00:01:05,980
E sappiamo che la parola Nuki è ciò che viene usato per invocare il costrutto, naturalmente.

14
00:01:06,230 --> 00:01:11,330
E così la stessa parola Noki è stata mantenuta per i riferimenti del costruttore.

15
00:01:11,960 --> 00:01:17,780
Quindi questa sarà una breve demo in alcune delle successive lezioni sull'API di onstream.

16
00:01:17,900 --> 00:01:24,660
In alcuni punti esamineremo i riferimenti del costruttore e utilizzeremo riferimenti al costruttore.

17
00:01:24,770 --> 00:01:28,840
Quindi andiamo avanti e guardiamo i riferimenti del costruttore in azione.

18
00:01:28,890 --> 00:01:31,790
Quindi questa è la demo dell'interfaccia funzionale.

19
00:01:32,120 --> 00:01:33,700
Quindi, come chiamare mentore.

20
00:01:33,710 --> 00:01:36,000
La maggior parte del nucleo nel metodo principale.

21
00:01:36,020 --> 00:01:43,250
Così qui abbiamo come poche dichiarazioni in cui useremo i riferimenti del costruttore e inizialmente qui stiamo

22
00:01:43,250 --> 00:01:46,600
costruendo alcuni oggetti e stiamo usando lambda.

23
00:01:46,710 --> 00:01:50,790
Ora cambieremo questo lambda nei riferimenti del costruttore.

24
00:01:50,960 --> 00:01:58,280
Quindi nella prima affermazione qui stiamo costruendo una stringa vuota e viene assegnata a un fornitore e fornitore

25
00:01:59,030 --> 00:02:02,810
che sappiamo è usato per la costruzione di oggetti.

26
00:02:02,810 --> 00:02:04,840
Cioè fornisce oggetti.

27
00:02:05,090 --> 00:02:07,850
E qui in questo caso sta salendo come una corda.

28
00:02:08,240 --> 00:02:14,180
Quindi nella dichiarazione di stampa stiamo invocando il metodo get sul fornitore nel motard Get

29
00:02:14,440 --> 00:02:16,210
che restituisce oggetto String.

30
00:02:16,220 --> 00:02:17,430
Quindi questo è un lambda.

31
00:02:17,480 --> 00:02:23,920
Quindi andiamo avanti e cambiamo in un riferimento di costruzione in modo che sia impostato.

32
00:02:23,950 --> 00:02:29,520
Quindi abbiamo il nome della classe seguito da Dirk McAllen's che viene poi seguito da allora nucular.

33
00:02:30,010 --> 00:02:33,540
Quindi la sintassi è molto simile alla principessa dei metadati.

34
00:02:33,550 --> 00:02:39,550
In effetti è più simile a questo metodo statico dei riferimenti di Francis ai metodi di inventario perché stiamo

35
00:02:39,550 --> 00:02:46,200
usando il nome della classe, i riferimenti al metodo nonstarted usano anche il nome della classe come prefisso al loro delimitatore

36
00:02:47,140 --> 00:02:47,700
OK.

37
00:02:47,900 --> 00:02:50,660
Quindi questo è come è fatto ora qui.

38
00:02:50,660 --> 00:02:55,370
E il secondo esempio stiamo costruendo ancora una volta un oggetto stringa.

39
00:02:55,370 --> 00:03:00,220
Ma qui stiamo invocando la nozione di overload del costruttore di stringhe.

40
00:03:00,350 --> 00:03:05,450
Quindi stiamo passando una stringa e questo viene restituito come istanza String.

41
00:03:05,840 --> 00:03:08,950
Quindi qui stiamo assegnando a una funzione.

42
00:03:09,230 --> 00:03:15,740
OK perché la funzione sta per selezionare una stringa in questo caso e restituirà un'altra istanza di

43
00:03:15,740 --> 00:03:16,510
stringa.

44
00:03:16,760 --> 00:03:18,470
Questo è ciò che sta accadendo qui.

45
00:03:18,470 --> 00:03:22,310
Anche la stringa di input sull'output è una stringa.

46
00:03:22,310 --> 00:03:24,660
Quindi questo è ciò che verrà scritto.

47
00:03:24,710 --> 00:03:26,260
Quindi questa è la stringa qui.

48
00:03:26,270 --> 00:03:28,670
Questo è l'input e questo è l'output.

49
00:03:28,670 --> 00:03:30,630
E sappiamo che è ciò che fa la funzione.

50
00:03:30,650 --> 00:03:34,530
Assume input e lo trasforma in un altro oggetto.

51
00:03:34,880 --> 00:03:36,450
Ecco cosa sta succedendo qui.

52
00:03:36,450 --> 00:03:42,680
E così qui nella dichiarazione di stampa stiamo invocando quel metodo e stiamo passando Jawa come

53
00:03:42,680 --> 00:03:46,560
input e output sarebbe un oggetto String letto giallo.

54
00:03:46,680 --> 00:03:48,820
E qui nel terzo esempio.

55
00:03:49,070 --> 00:03:51,770
Quindi lasciami andare e cambiare questo.

56
00:03:51,780 --> 00:03:57,190
Quindi anche qui sarà la stessa sintassi per il riferimento del costruttore.

57
00:03:57,490 --> 00:04:04,350
OK sarà uguale a quello precedente anche se invocherà il costruttore sovraccarico.

58
00:04:04,650 --> 00:04:10,710
Quindi la decisione su quale costruttore invocare si basa sul contesto.

59
00:04:10,920 --> 00:04:18,400
In questo caso il contesto è qui come fornitore in modo che il fornitore non scelga alcun parametro.

60
00:04:18,600 --> 00:04:21,080
E produce solo un oggetto.

61
00:04:21,450 --> 00:04:24,590
Quindi invocherà un costruttore.

62
00:04:24,720 --> 00:04:28,740
Quindi in questo caso invocherà il costruttore della stringa no arg.

63
00:04:29,010 --> 00:04:34,980
Mentre in questo caso invocherà il costruttore che prende un singolo parametro, che è fuori da una

64
00:04:34,980 --> 00:04:38,010
stringa e che farà male a una stringa.

65
00:04:38,010 --> 00:04:42,790
Quindi in questo caso il contesto ci aiuta e sceglie il costruttore giusto.

66
00:04:42,870 --> 00:04:47,570
Ora nel terzo caso stiamo costruendo una mappa di hash qui.

67
00:04:47,700 --> 00:04:53,760
E per questo viene invocata questa versione del costruttore della mappa hash che sta prendendo una capacità

68
00:04:53,970 --> 00:04:56,190
iniziale e un fattore di carico.

69
00:04:56,190 --> 00:05:02,540
Di solito quando il metodo hash map non rende alcun argomento o costruttore.

70
00:05:02,610 --> 00:05:04,680
Ma in questo caso questo è quello che stiamo facendo.

71
00:05:04,710 --> 00:05:12,860
Quindi l'input come la capacità che è fuori dal numero intero e il fattore di carico che è fuori da Plaut e questo è

72
00:05:12,860 --> 00:05:18,360
il valore di ritorno poiché ci sono due ingressi che stiamo usando una funzione di byte.

73
00:05:18,440 --> 00:05:24,500
Quindi sta prendendo due parametri due argomenti e questo sta costruendo un nuovo oggetto che è una mappa di hash

74
00:05:24,500 --> 00:05:25,200
del tubo.

75
00:05:25,280 --> 00:05:27,000
Questo è ciò che viene fatto qui.

76
00:05:27,110 --> 00:05:31,690
Finora questo è il Sendak.

77
00:05:31,830 --> 00:05:34,320
Quindi non abbiamo passato nessun argomento qui.

78
00:05:34,570 --> 00:05:41,250
Che si tratti di riferimenti costruiti o di Francis Armato, trovo gli argomenti effettivamente passati

79
00:05:41,250 --> 00:05:45,480
quando invochiamo il metodo in questione sull'interfaccia funzionale.

80
00:05:45,540 --> 00:05:46,200
Destra.

81
00:05:46,680 --> 00:05:48,290
Quindi questo è quello che abbiamo qui.

82
00:05:49,880 --> 00:05:55,140
Ma in genere si vedranno tali riferimenti del costruttore assegnati al fornitore.

83
00:05:55,280 --> 00:05:57,900
OK, questo è ciò che vedremo più avanti.

84
00:05:57,900 --> 00:06:00,670
Quindi, stiamo esaminando le loro demo per lo streaming API.

85
00:06:00,860 --> 00:06:06,820
Quindi ci sono casi in cui stiamo usando i riferimenti del costruttore e sono tutti assegnati all'interfaccia della

86
00:06:06,890 --> 00:06:08,990
funzione di fornitura del fornitore.

87
00:06:09,320 --> 00:06:16,560
Ora quello che stiamo facendo è che stiamo costruendo una stringa ma che viene assegnata ad un consumatore e il consumatore

88
00:06:16,670 --> 00:06:23,000
che conosciamo ha questo metodo chiamato accept che accetta un singolo parametro ma il tipo restituito di

89
00:06:23,000 --> 00:06:24,180
accept è bianco.

90
00:06:24,200 --> 00:06:26,330
Quindi non restituirà nulla.

91
00:06:26,330 --> 00:06:33,530
Quindi, ciò significa che l'oggetto stringa che verrà creato all'interno del metodo estratto Velle non ha scritto

92
00:06:33,530 --> 00:06:35,140
nulla di corretto.

93
00:06:35,150 --> 00:06:40,400
Sarà l'oggetto stringa costruttore ma il metodo X-book non ha fatto nulla che lo

94
00:06:40,400 --> 00:06:41,510
rende inutile.

95
00:06:41,510 --> 00:06:49,640
Quindi è davvero inutile assegnare un riferimento al costruttore di stringhe a un consumatore perché il consumatore non lo

96
00:06:49,640 --> 00:06:51,340
legge su nulla.

97
00:06:51,410 --> 00:06:57,200
Quindi se non stava facendo alcune cose un oggetto come nel caso della fornitura o di una funzione o di una funzione,

98
00:06:57,620 --> 00:07:00,340
allora ha senso assegnare a un costrutto un riferimento.

99
00:07:00,350 --> 00:07:06,240
Ma in questo caso, poiché il consumatore non ha intenzione di fare qualcosa, non ha senso assegnarlo.

100
00:07:06,380 --> 00:07:08,920
Ma ancora compila bene.

101
00:07:08,990 --> 00:07:10,910
Anche l'oggetto verrà creato.

102
00:07:10,910 --> 00:07:14,560
È solo che quel metodo non restituisce nulla.

103
00:07:14,600 --> 00:07:17,130
Quindi rendendolo inutile.

104
00:07:17,390 --> 00:07:18,860
Quindi questa è la cosa.

105
00:07:18,860 --> 00:07:22,010
Quindi qui stiamo usando la funzione fornitore per funzione.

106
00:07:22,010 --> 00:07:25,850
Ora diciamo l'oggetto che dobbiamo costruire.

107
00:07:26,090 --> 00:07:29,620
Diciamo che il costruttore prende più di due parametri.

108
00:07:29,640 --> 00:07:33,610
Diciamo che ci vogliono quattro o cinque parametri ed è un oggetto.

109
00:07:34,000 --> 00:07:39,650
Se non abbiamo un'interfaccia funzionale standard che rappresenti l'essere quel tipo di costruttore, allora dovremmo

110
00:07:39,650 --> 00:07:45,110
creare la nostra funzione e interfaccia e quindi dovremmo assegnare al nostro costrutto

111
00:07:45,110 --> 00:07:47,690
un riferimento all'interfaccia di tale funzione.

112
00:07:47,720 --> 00:07:54,850
Questo è ciò che questo commento qui è creare un'interfaccia personale se le interfacce di funzione esistenti non sono utili.

113
00:07:54,980 --> 00:07:55,730
Quindi questo è tutto.

114
00:07:55,730 --> 00:07:59,190
Quindi lasciami andare avanti e gestirlo.

115
00:07:59,280 --> 00:08:00,480
Ecco qui.

116
00:08:00,490 --> 00:08:02,230
Quindi il fornitore non può arrivare qui.

117
00:08:02,380 --> 00:08:04,110
Stampa una stringa vuota.

118
00:08:04,120 --> 00:08:10,600
Quindi, perché stiamo costruendo una stringa vuota qui e la stringa e ha un valore giusto non ha alcun

119
00:08:10,600 --> 00:08:11,120
valore.

120
00:08:11,140 --> 00:08:12,690
Quindi stamperebbe una stringa vuota.

121
00:08:12,940 --> 00:08:16,030
Quindi nel secondo esempio stiamo passando Java.

122
00:08:16,270 --> 00:08:21,340
Quindi l'oggetto stringa ha la stringa Java e questo è ciò che viene stampato qui.

123
00:08:21,550 --> 00:08:24,390
Quando la funzione non si applica è in funzione.

124
00:08:24,550 --> 00:08:30,430
Quindi un oggetto stringa viene scritto su quell'oggetto stringa ha la parola chiave Jolan che viene stampata nel secondo

125
00:08:30,430 --> 00:08:33,870
nel terzo esempio in cui viene creata una mappa hash.

126
00:08:34,180 --> 00:08:35,580
Ma è una mappa di hash vuota.

127
00:08:35,590 --> 00:08:39,040
Quindi abbiamo solo come queste parentesi qui vuoto base.

128
00:08:39,040 --> 00:08:40,510
Quindi questa è l'acqua per noi.

129
00:08:40,540 --> 00:08:47,230
Quindi questo è un costrutto o riferimenti a un libro e abbiamo visto alcune istanze di usare riferimenti al

130
00:08:47,320 --> 00:08:51,890
costruttore e alcune delle demo successive che dicevano grazie e buon codice.
