Java, I want you!
ํ์ฌ์์ Kafka ๊ด๋ จ ์์ ์ ์ง์ค์ ์ผ๋ก ํ๊ฒ ๋๋ฉด์, Java๋ฅผ ์ข ํฌ๊ด์ ์ผ๋ก ์์์ผ ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์ด์ ๋ค์ ํ๋ฒ Java์ ์นํด์ง๊ธฐ์ ๋์ ํด๋ด ๋๋ค!
interface์ ๋ํด
Java์์ ํด๋์ค๊ฐ ๊ตฌํํด์ผ ํ ๋ฉ์๋๋ฅผ ๋ฏธ๋ฆฌ ์ ์ํ ๊ฒ. ์ค์ ๊ตฌํ์ ๊ตฌํ์ฒด(implements)์์ ์ํํ๋ค.
interface ๋ผ๋ฆฌ๋ ์์์ด ๊ฐ๋ฅํ๋ค. ๊ทธ๋์ extends๋ก ๊ธฐ์กด interface์ ์ถ๊ฐ์ ์ธ ์ค์ผ๋ ํค ํจ์๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค.
implements ๋ค์ค ์์์ด ๋์ง๋ง, extends๋ ๋จ์ผ ์์๋ง ๋๋ค.
์ฝ๋๋ฅผ ๋ณด๋ค๋ณด๋ฉด, extends๋ ํ๋ฉด์ implements๋ ํ๋ ๊ฒ๋ค์ด ์๋๋ฐ ๋นํฉํ์ง ๋ง์โฆ;;
class Animal {
void eat() {
System.out.println("๋จน๋๋ค");
}
}
interface Pet {
void play();
}
interface Trainable {
void train();
}
class Dog extends Animal implements Pet, Trainable {
public void play() {
System.out.println("๋์์");
}
public void train() {
System.out.println("ํ๋ จํด์");
}
}
Java 8 & 11
https://youtu.be/_6YP2FNTt80?si=9emCKpoN38FyStuj
- Java 8
forEach()๋ฅผ ์ง์.- ๋๋ค ํํ์์ ์ง์
.stream()์ผ๋ก ๋ณ๋ ฌ ์ฒ๋ฆฌ ์ง์interface์์default๋ฉ์๋ ์ง์Optionalํ์ ์ง์- null-safe ์ฝ๋๋ฅผ ์ง๊ธฐ ์ํ ๊ธฐ์ด๊ฐ ๋จ
- Java 11
String์์ ์ถ๊ฐ์ ์ธ ๋ด์ฅ ๋ฉ์๋ ์ถ๊ฐ.isBlank(),.repeat()
- ๋๋ค ํํ์ ๋ด๋ถ์์๋
varํค์๋ ์ฌ์ฉ ๊ฐ๋ฅ - ๋ด์ฅ
HttpClient๋ฅผ ์ง์