Java Guru πŸ€“
13.2K subscribers
899 photos
15 videos
773 links
Канал с вопросами ΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ с собСсСдований!

По сотрудничСству ΠΈ Ρ€Π΅ΠΊΠ»Π°ΠΌΠ΅: @NadikaKir

Канал Π² ΠΏΠ΅Ρ€Π΅Ρ‡Π½Π΅ РКН: https://vk.cc/cJrSQZ

ΠœΡ‹ Π½Π° Π±ΠΈΡ€ΠΆΠ΅: telega.in/channels/javatasks/card?r=lcDuijdm
Download Telegram
Π§Ρ‚ΠΎ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄?
Anonymous Quiz
17%
1
31%
2
13%
3
40%
4
πŸ‘20😐10πŸ‘Œ2πŸ†1
InputStream, OutputStream ΠΈ ΠΈΡ… buffered вСрсии

Π”Π°Π»Π΅Π΅, для краткости InputStream β€” is, OutputStream β€” os
is β€” ΠΏΠΎΠ±Π°ΠΉΡ‚Π½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· сокСта/Ρ„Π°ΠΉΠ»Π°/строки/Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π±Π°ΠΉΡ‚ΠΎΠ²ΠΎΠ³ΠΎ массива
os β€” побайтная запись Π² сокСт/Ρ„Π°ΠΉΠ»/Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ массив
Buffered-вСрсии Π½ΡƒΠΆΠ½Ρ‹ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ чтСния/записСй Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π±ΡƒΡ„Ρ„Π΅Ρ€
πŸ‘24
Serializable, serialVersionUID

ΠšΠ»Π°ΡΡΡ‹, Ρ‡ΡŒΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°ΡŽΡ‚ΡΡ сСриализации/дСсСриализации Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ marker интСрфСйс Serializable (ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ статичСскоС ΠΏΠΎΠ»Π΅ serialVersionUID для ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΏΡ€ΠΈ сСриализации, с ΠΊΠ°ΠΊΠΎΠΉ вСрсиСй класса Π΄Π°Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±Ρ‹Π» сСриализован. Если serialVersionUID ΠΈΠ· сСриализованного прСдставлСния Π½Π΅ совпадаСт c serialVersionUID класса Β«Π½Π° Ρ‚ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°Β» β€” Ρ‚ΠΎ кидаСтся exception)

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, ΡƒΠΆΠ΅ довольно Ρ€Π΅Π΄ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ρ‚.ΠΊ Ρ‚Π΅ΠΌ ΠΆΠ΅ Jackson/GSON Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ интСрфСйса для сСриализации
πŸ‘21
Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ Π½Π° экран?
πŸ‘18
πŸ‘24πŸ’”5πŸ”₯3🀬3
Какой Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ компиляции ΠΈ выполнСния Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°?
πŸ‘18πŸ₯±4
Какой Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ компиляции ΠΈ выполнСния Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°?
Anonymous Quiz
6%
10
15%
11
11%
12
36%
17
18%
18
15%
Ошибка Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния
πŸ‘21πŸŽ‰7
try-with-resources. AutoCloseable

try-with-resources β€” краткая Π·Π°ΠΌΠ΅Π½Π° стандартному try..catch..finally. Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ рСсурс послС Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· сСкции try-with-resources. РСсурс Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚ΡŒ интСрфСйс AutoCloseable.

«РСсурс» Π² Π΄Π°Π½Π½ΠΎΠΌ контСкстС β€” это класс, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ cΠΎΠ±ΠΎΠΉ соСдинСниС/cΠΎΠΊΠ΅Ρ‚/Ρ„Π°ΠΉΠ»/ΠΏΠΎΡ‚ΠΎΠΊ

try (InputStream is = new FileInputStream("/path/to/file.txt")) {
...
}
πŸ‘23
Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ Π½Π° экран?
πŸ‘17
Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ Π½Π° экран?
Anonymous Quiz
31%
1
31%
2
23%
3
15%
Ошибка компиляции
πŸ‘27πŸ’”7πŸŽ‰3
ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ checked-exception/unchecked-exception. Error, Exception, RuntimeException

β€’ Checked exceptions (провСряСмыС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ). Π’ JDK прСдставлСны классом Exception. Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСльзя ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈΡ… ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ, Π»ΠΈΠ±ΠΎ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² сигнатурС ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Ρ‹ΡˆΠ΅. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Π΄ΡƒΡ€Π½Ρ‹ΠΌ Ρ‚ΠΎΠ½ΠΎΠΌ, Ρ‚.ΠΊ ΠΊΠΎΠ΄ со ΠΌΠ½-Π²ΠΎΠΌ конструкций try..catch ΠΏΠ»ΠΎΡ…ΠΎ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»Π΅Π½, ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… пробрасываСмых ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π² сигнатурС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ Π²Ρ‹Π·ΠΎΠ²Π° Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.
β€’ Unchecked exceptions (нСпровСряСмыС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ). Π’ JDK это класс RuntimeException. МоТно ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· try..catch, ΠΈΠ»ΠΈ указания Π² сигнатурС Ρ‡Π΅Ρ€Π΅Π· throws. ΠœΠΈΠ½ΡƒΡ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° β€” Ρƒ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ стороны Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ понимания, ΠΊΠ°ΠΊ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡ‚ΠΎΠΌ Β«Ρ€Π²Π°Π½Π΅Ρ‚Β»
β€’ Error β€” ошибки, ΠΊΠΈΠ΄Π°Π΅ΠΌΡ‹Π΅ JVM Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΈ памяти (OutOfMemoryError), пСрСполнСния стэка (StackOverflowError) ΠΈ.Ρ‚.Π΄
πŸ‘28πŸ”₯1πŸ€”1🀩1
@javalib - telegram ΠΊΠ°Π½Π°Π» с самым большим Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ΠΌ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° для Java программистов.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅ΠΌ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° самыС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ вопросыπŸ”₯ А Ρ‚Π°ΠΊΠΆΠ΅ дСлимся Π»ΡƒΡ‡ΡˆΠΈΠΌΠΈ ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ, интСрСсными ΡΡ‚Π°Ρ‚ΡŒΡΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ.

ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ всё самоС свСТСС!
πŸ‘6πŸ”₯2⚑1
Каким Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ послС выполнСния Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹?
πŸ€”12πŸ‘10
Каким Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ послС выполнСния Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹?
Anonymous Quiz
28%
A action
32%
B action
32%
Код Π½Π΅ скомпилируСтся
9%
Ошибка Π²ΠΎ врСмя выполнСния
πŸ‘23
КакиС Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ‚ΠΈΠΏΡ‹ памяти Π² Java?

Π’ Java сущСствуСт Π΄Π²Π° Π²ΠΈΠ΄Π° памяти - heap ΠΈ stack. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… Ρ…Ρ€Π°Π½ΠΈΡ‚ свой Π²ΠΈΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΠΌΠ΅Π΅Ρ‚ свою структуру ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ своСй схСмС. Heap выдСляСт ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ JRE классы, stack Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ…Ρ€Π°Π½ΠΈΡ‚ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹.
πŸ‘32🀬1
Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ Π½Π° консоль Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°?
πŸ‘11🀬2
Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ Π½Π° консоль Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°?
Anonymous Quiz
16%
1
29%
2
47%
Ошибка компиляции
7%
Ошибка Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния
πŸ‘17πŸ₯±4🀬1
Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ heap ΠΈ stack?

Heap
ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ всСми частями прилоТСния, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ stack ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ лишь Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ создаСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚(практичСски всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово new) - этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ хранится Π² heap, Π° Π² stack хранится ссылка Π½Π° этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚:

Person person = new Person();
Ρ‚ΡƒΡ‚ ΠΌΡ‹ создаСм Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Person(), послС Ρ‡Π΅Π³ΠΎ ΠΎΠ½ сразу ΠΆΠ΅ помСщаСтся Π² heap, Π° person становится ссылкой Π½Π° этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ хранится Π² stack.

Stack - упорядочСнная структура ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ схСмС LIFO(Last-In-First-Out). Ρƒ heap вСсь доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ происходит ΠΏΠΎ ссылкам ΠΈΠ· stack.

Heap Π² Ρ€Π°Π·Ρ‹ большС stack, stack Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстрСС благодаря структурС, stack "ΠΆΠΈΠ²Π΅Ρ‚" ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ heap "ΠΆΠΈΠ²Π΅Ρ‚" вСсь "ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ»" ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.
πŸ‘35🀬1
Π§Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Ρ‘Ρ‚ ΠΏΡ€ΠΈ компиляции Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°?
πŸ‘8🀬3