์ฝ๋๋ฅผ ์์ฑํ๋ ์ค SonarLint์์ ์์ ๊ฐ์ ๊ฒฝ๊ณ ๋ฌธ๊ตฌ๋ฅผ ์ ์ํ๋ค. Sonar Cloud์์ ๋งํ๊ณ ์๋ ์ด์ ๋ก๋ ๋ค์๊ณผ ๊ฐ์ ์ค๋ช
์ด ํฌํจ๋์ด์๋ค. "This rule raises an issue on a non-transient and non-serializable field within a serializable class, if said class does not have writeObject and readObject methods defined." "์ด ๊ท์น์ ์ง๋ ฌํ ๊ฐ๋ฅํ ํด๋์ค ๋ด์ ์ผ์์ ์ด์ง ์๊ณ ์ง๋ ฌํํ ์ ์๋ ํ๋๊ฐ ์๋ ๊ฒฝ์ฐ, ํด๋น ํด๋์ค์ writeObject ๋ฐ readObject ๋ฉ์๋๊ฐ ์ ์๋์ด ์์ง ์์ ๊ฒฝ์ฐ ๋ฌธ์ ๋ฅผ ์ผ์ผํต๋๋ค." ํ๋ง๋๋ก ์ง๋ ฌํ ๋์์ธ ํด๋์ค ๋ด๋ถ์ ..
๐ฌ Language
Gson gson = new Gson(); HashMap jsonObject = gson.fromJson(input.toString(), new TypeToken(){}.getType()); result.add(jsonObject); ์์๊ฐ์ด ์์ฑํ์์ ๋ com.google.gson.stream.MalformedJsonException์ด ๋ฐ์ํ๋ค. ๋ค๋ฃจ๋ ๋ฐ์ดํฐ์ค ํน์๋ฌธ์ ใ ๋ฐ ๊ณต๋ฐฑ์ผ๋ก ์ธํด ํด๋น ์ค๋ฅ๊ฐ ๋ฐ์ Gson์ ์ฌ์ฉํ ๋๋ ํ๊ธ, ์์ด, ์ผ๋ถ ํน์๋ฌธ์๋ฅผ ๋ณํํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ณ๋์ ๋ณํ์์
์ด ํ์ํ๋ค. public String replaceStr(String str) { String tempStr = str.replace("ใ", "ml"); // ํ๊ธ, ์์ด, ์ผ๋ถ ํน์๋ฌธ์๋ฅผ ์ ์ธํ ๋ฌธ์..
ํ๋ก์ ํธ ๋ถ์ ์ค ์์ธ์ฒ๋ฆฌ ๋ฌธ๊ตฌ๋ฅผ ๋ณด๊ณ ์์๋ณด๊ณ ์ถ์ด ํ๋ฒ ์ ๋ฆฌํ๊ฒ ๋์๋ค. ์์ธ์ฒ๋ฆฌ (Exception Handling)์ ์๋ชป๋ ๋ฐ์ดํฐ์
๋ ฅ / ์ฐ์ / ๋ก์ง ์ํ ์ด๋ ํ๋์จ์ด ํน์ ๋คํธ์ํฌ์ ์ค์๋ ๋ฑ ์ฌ๋ฌ ์์ธ์ผ๋ก ์ธํด ๋ฐ์ํ๋ค. Java์์๋ ์ด๋ฌํ ์์ธ์ฒ๋ฆฌ๋ฅผ ์ํ ํด๋์ค๊ฐ ๊ตฌํ๋์ด์๋ค. Throwable Throwable ํด๋์ค๋ ๋ชจ๋ ์์ธ ํด๋์ค๋ค์ด ๊ฐ์ง๊ณ ์๋ ๊ณตํต๋ ๋ฉ์๋๋ฅผ ์ ์ํ๊ณ ์๋ค. Exception์ ํฌ๊ฒ ๋๊ฐ์ง ์ข
๋ฅ๋ก ๋๋๋ค. Checked Exception - ์์ธ์ฒ๋ฆฌ๊ฐ ํ์์ด๋ฉฐ, ์ฒ๋ฆฌํ์ง ์์ผ๋ฉด ์ปดํ์ผ์ด ์๋จ. - JVM ์ธ๋ถ์ ํต์ (๋คํธ์ํฌ, ํ์ผ์์คํ
๋ฑ)ํ ๋ ์ฃผ๋ก ์ด๋ค. - ์ ๋ชฉ๋ก ์ค RuntimeException์ ์ ์ธํ ๋ค๋ฅธ Exception๋ค์ด ์ด์ ํด๋นํ๋ค. ..
HTML ๋ฐ XML ๋ฌธ์๋ฅผ ๊ตฌ๋ฌธ๋ถ์ํ๊ธฐ ์ํ Python ํจํค์ง์ธ beautifulsoup๋ฅผ ์ค์นํ์ pip install requests beautifulsoup4 Pycharm์์๋ ๋ค์๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก๋ ํจํค์ง๋ฅผ ์ถ๊ฐํ ์ ์๋ค. Setting - Project:~ - Project interpreter - + - ์ํ๋ํจํค์ง ์ ํ ํ install ๋จผ์ ๋ด ๋ธ๋ก๊ทธ(eveydayidid.tistory.com)์ html ์ ๋ณด๋ฅผ ๊ฐ์ ธ์๋ณด์ from urllib.request import urlopen from bs4 import BeautifulSoup html = urlopen("https://everydayidid.tistory.com/52") bs = BeautifulSoup(html, "htm..
1. ์ค๋ ๋(Thread)๋? - ์ด๋ค ํ๋ก์ธ์ค ๋ด์์ ์คํ๋๋ ํ๋ฆ(์์
)์ ๋จ์๋ค. - ํ๋ก์ธ์ค ๋ด ๋ช
๋ น์ด ๋ธ๋ก์ผ๋ก ์์, ์ข
๋ฃ์ ์ ๊ฐ์ง๋ค. JVM์ ์ํด ํ๋์ ํ๋ก์ธ์ค๊ฐ ๋ฐ์ํ๊ณ main ๋ด๋ถ์ ์คํ๋ฌธ์ด ํ๋์ ์ค๋ ๋๋ค. main() ์ด์ธ์ ๋ค๋ฅธ ์ค๋ ๋๋ฅผ ๋ง๋ค๋ ค๋ฉด Thread ํด๋์ค๋ฅผ ์์ํ๊ฑฐ๋ Runnalble ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๋ค. ๋ค์ค ์ค๋ ๋ ์์
์ ๊ฐ ์ค๋ ๋๋ผ๋ฆฌ ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ ์์ด ์ฒ๋ฆฌ ๊ณผ์ ์ ์ค๋ฅ๋ฅผ ์ค์ผ ์ ์๋ค. ํ๋ก์ธ์ค๋ผ๋ฆฌ๋ ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ ์๋ค. 2. ๋ฉํฐ์ค๋ ๋ฉ์ด๋? ์ฌ๋ฌ ์ค๋ ๋๋ฅผ ๋์์ ์คํ์ํค๋ ์์ฉํ๋ก๊ทธ๋จ์ ์์ฑํ๋ ๊ธฐ๋ฒ์ด๋ค. ์ฅ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต์ ๋ก ์ธํ ์์คํ
์์ ์๋ชจ๊ฐ ์ค์ด๋ ๋ค. ๋์์ ๋ ๊ฐ์ง ํ๋์ ํ๋ ๊ฒ์ด ๊ฐ๋ฅํด์ง๋ค. ๋จ์ ์๋ก ์์์ ์๋ชจํ๋ค๊ฐ ์ถฉ๋์ด ์ผ์ด..
Overloading : ๋ฉ์๋์ ๋งค๊ฐ๋ณ์๋ฅผ ๋ค๋ฅด๊ฒํ์ฌ ์์ญ์ ํ์ฅํ๋ค. public class Parent { public Parent() { } public Parent(String name) { System.out.println(name); } public Parent(String name, int age) { System.out.println(name + "์ ๋์ด๋ " + age + "์ด ์
๋๋ค."); } } Overriding : ๋ถ๋ชจ ํด๋์ค์์ ๋ง๋ ๋ฉ์๋๋ฅผ ๋ฎ์ด์์ด๋ค. ๋ฐ๋ผ์ ๋ฉ์๋ ์๊ทธ๋์ฒ์ ๋งค๊ฐ๋ณ์๊ฐ ๋์ผํด์ผํ๋ค. public class Parent { public Parent() { } public void printName() { System.out.println("Parent - ..