All language subtitles for 011 Reference Trap_en

af Afrikaans
sq Albanian
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bn Bengali
bs Bosnian
bg Bulgarian
ca Catalan
ceb Cebuano
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
tl Filipino
fi Finnish
fr French
fy Frisian
gl Galician
ka Georgian
de German
el Greek
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian Download
is Icelandic
ig Igbo
id Indonesian
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
km Khmer
ko Korean
ku Kurdish (Kurmanji)
ky Kyrgyz
lo Lao
la Latin
lv Latvian
lt Lithuanian
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mn Mongolian
my Myanmar (Burmese)
ne Nepali
no Norwegian
ps Pashto
fa Persian
pl Polish
pt Portuguese
pa Punjabi
ro Romanian
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
st Sesotho
sn Shona
sd Sindhi
si Sinhala
sk Slovak
sl Slovenian
so Somali
es Spanish
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
te Telugu
th Thai
tr Turkish
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
or Odia (Oriya)
rw Kinyarwanda
tk Turkmen
tt Tatar
ug Uyghur
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 00:00:01,330 --> 00:00:04,030 Once again, we need to be careful of the reference trap. 2 00:00:09,110 --> 00:00:14,240 There are two ways to fall for this trap, it can happen by mishandling arrays and objects. 3 00:00:18,050 --> 00:00:22,010 In this lesson, we're going to see how this trap occurs when mishandling objects. 4 00:00:27,410 --> 00:00:31,780 A trap happens when many variables a reference to one object. 5 00:00:40,400 --> 00:00:43,970 If I update the object through one variable, it's going to affect the other. 6 00:00:50,630 --> 00:00:54,330 To avoid the trap, do not set class variables equal to each other. 7 00:00:54,920 --> 00:00:55,850 Sound familiar? 8 00:00:55,880 --> 00:00:56,590 I hope so. 9 00:00:57,140 --> 00:00:59,390 I told you the same thing about array variables. 10 00:01:03,680 --> 00:01:06,860 The see this inaction will add another variable in Nissan to. 11 00:01:12,280 --> 00:01:14,590 And we'll set it equal to the Nissan object. 12 00:01:21,590 --> 00:01:23,810 And for now, I'd like to remove the setas. 13 00:01:29,740 --> 00:01:32,080 Then we're going to print the fields from Nissan to. 14 00:02:01,700 --> 00:02:03,610 OK, nothing weird so far. 15 00:02:05,890 --> 00:02:09,250 Now, what if I decide to paint the second Nissan yellow? 16 00:02:24,310 --> 00:02:25,120 Run the code. 17 00:02:34,350 --> 00:02:39,600 Oh, I meant the only update, the second Nisan, but now the first Nissan is yellow as well. 18 00:02:40,810 --> 00:02:42,040 You fell into the trap. 19 00:02:47,470 --> 00:02:51,080 When you set a variable equal to another, it copies the value inside. 20 00:02:51,610 --> 00:02:57,730 In this case, what's inside is a reference and now both variables share a reference that points to 21 00:02:57,730 --> 00:02:58,720 the same object. 22 00:02:59,200 --> 00:03:02,650 If I update the object, the one variable, it's going to affect the other. 23 00:03:03,400 --> 00:03:04,810 This is bad. 24 00:03:08,780 --> 00:03:14,930 The state of a variable should not change because you updated another, the reference shop can make 25 00:03:14,930 --> 00:03:17,090 your code dangerous and unpredictable. 26 00:03:21,410 --> 00:03:25,730 The solution is to make a new object, don't be lazy is create a new object. 27 00:03:29,870 --> 00:03:34,550 Inside your code set the variable Nissan to equal to a new object. 28 00:03:37,260 --> 00:03:42,270 And after creating a new object called the constructor, by passing the four values that it needs to 29 00:03:42,270 --> 00:03:43,470 update your fields. 30 00:03:49,330 --> 00:03:50,590 All right, run your code. 31 00:03:54,500 --> 00:03:58,190 And as I expect, all of the objects are independent of each other. 32 00:04:01,860 --> 00:04:07,700 Instead of setting the variables equal to each other, we made a new object and now my mind is at peace. 33 00:04:07,980 --> 00:04:11,860 I can take comfort knowing that each variable points to a unique object. 34 00:04:12,270 --> 00:04:16,019 I don't have to worry about the state of one variable being affected by another. 35 00:04:21,720 --> 00:04:25,400 This is a great solution, so we can update our table of traps. 36 00:04:26,040 --> 00:04:28,110 Don't worry, it's all in your cheat sheet. 37 00:04:32,990 --> 00:04:38,750 So far, we went over to reference drops in this video, we talked about the second trap do not set 38 00:04:38,750 --> 00:04:40,520 object variables equal to each other. 39 00:04:40,880 --> 00:04:42,440 This doesn't copy the object. 40 00:04:42,440 --> 00:04:43,730 It copies the reference. 41 00:04:54,190 --> 00:04:57,040 Instead, set your variable equal to a new object. 42 00:05:00,550 --> 00:05:05,980 It's much better if a variable points to a unique object, then you don't have to worry about the state 43 00:05:05,980 --> 00:05:08,500 of one variable being affected by another. 4070

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.