μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- effectiveJava
- enum μμ±μ μ κ·Ό μ νμ
- μ΄νν°λΈμλ°
- μλ°λΌμ΄λΈμ€ν°λ
- λΉμΌκ°μ²΄μμ±
- μν°λ κ°λ°μνμ¬
- item15
- Hikari Connection Pool
- μν°λ λ³μ’ κ°λ°μ
- μμ
- μλ°μμ
- index full scan
- mysql
- μλ°μ°λ λ
- λ°μ©λ μ€κ΅μ΄
- builder null
- hikari cp μ€μ
- index skip scan
- InnoDBμν€ν μ²
- λ°μ΄ν°λ² μ΄μ€κ²©λ¦¬μμ€
- μλ°
- μλΌμ€ν±μμΉλ©μΈμ§μ©λ
- μλ°μμμ°λ λλ₯Ό μ¬μ©νλ μ΄μ
- Item6
- μΈλ±μ€μ€ν΅μ€μΊ
- μμ΄ν 15
- μΈλ±μ€νμ€μΊ
- SVN
- mysqlμν€ν μ²
- assert.notnull
- Today
- Total
λͺ©λ‘Language/Java (20)
βπ»κΈ°λ‘νλ λΈλ‘κ·Έ
μλ° λΌμ΄λΈ μ€ν°λ 6μ£Ό μ°¨ - μμ github.com/whiteship/live-study/issues/6#issuecomment-751219666 1. μλ° μμμ νΉμ§ ν΄λμ€λ₯Ό μ μν λ κΈ°μ‘΄μ ꡬνλ ν΄λμ€λ₯Ό μμλ°μμ μμ± (λ³μ), κΈ°λ₯(λ©μλ)μ΄ νμ₯λλ κ² κΈ°μ‘΄μ ν΄λμ€λ₯Ό κ°μ Έλ€κ° μ‘°κΈ λ νμ₯μ κ°λ uml λ€μ΄μ΄κ·Έλ¨μΌλ‘ μμμ νν μ μμλ°λ λΆλͺ¨ν΄λμ€λ₯Ό μμ ν΄λμ€κ° νμ΄νλ‘ κ°λ¦¬ν€κ² λλ€. λ€μ€ μμμ μ§μνμ§ μλλ€. μμμ νμμ μ ν λμ§ μλλ€. 2. super ν€μλ λΆλͺ¨ ν΄λμ€λ‘λΆν° μμλ°μ νλλ λ©μλλ₯Ό μμ ν΄λμ€μμ μ°Έμ‘° μ μ¬μ©νλ μ°Έμ‘° λ³μ λΆλͺ¨ ν΄λμ€μ λ©€λ²μ μμ ν΄λμ€μ λ©€λ² μ΄λ¦μ΄ κ°μ κ²½μ° super ν€μλλ₯Ό μ¬μ©νμ¬ κ΅¬λ³ κ°λ₯ class Paren..
μ£Όλ‘ μμμ μμ ν΄λμ€λ‘ μ¬μ©λ¨ μΆμ ν΄λμ€ μ μΈ νμ abstract λ°ννμ λ©μλμ΄λ¦(); ꡬνλ λ©μλλ νμ ν΄λμ€κ° 곡ν΅μΌλ‘ μ¬μ©νλ κΈ°λ₯μ λ©μλ , νμ ν΄λμ€μ λ°λΌ μ¬μ μκ° κ°λ₯ μΆμ ν΄λμ€λ new (μΈμ€ν΄μ€ν)κ° λΆκ°νλ€ → λ©μλμ λ°λκ° μμΌλ―λ‘ μμ) μμ£Όμ¬μ©νλ λͺ¨λμ 곡ν΅λλ λΆλΆμ 미리 λ§λ€κ³ , λ°μ μ¬μ©νλ μͺ½μμ μμ μ΄ νμν λΆλΆλ§ μ¬μ μνμ¬ μ¬μ©, μμ°μ±μ΄ ν₯μ λͺ¨λ λ©μλκ° κ΅¬νλμλ€κ³ ν΄λ ν΄λμ€μ abstract ν€μλλ₯Ό μ¬μ©νλ©΄ μΆμ ν΄λμ€ → jdk λ΄λΆμλ μ‘΄μ¬, μ€λ‘μ§ μμμ μν μΆμ ν΄λμ€ package abstractex; public abstract class Computer { public abstract void display(); pub..
Object ν΄λμ€ (java.lang.Object) λͺ¨λ ν΄λμ€μ μ΅μμ ν΄λμ€, λͺ¨λ ν΄λμ€λ object ν΄λμ€λ₯Ό μμ λ°μ -> λ°λ‘ extends νμ§ μμλ μ¬μ©μ΄ κ°λ₯ λ°λ‘ toString () λ©μλλ₯Ό μΈ μ μλ μ΄μ μ»΄νμΌλ¬κ° μλ importν¨ μ¬μ©μκ° μ§μ extendsνμ§ μμλ μ»΄νμΌλ¬κ° μλμΌλ‘ λ£μ΄μ€ java.langν¨ν€μ§λ μλ°μμ κ°μ₯ κΈ°λ³Έμ μΈ λμμ νλ ν΄λμ€ java.langν¨ν€μ§λ λ°λ‘ importνμ§ μμλ ν΄λμ€μ μ΄λ¦λ§μΌλ‘ μ¬μ©μ΄ κ°λ₯ ex) String, Void , System Object ν΄λμ€λ νλλ₯Ό κ°μ§μ§ μμΌλ©°, μ΄ 11κ° λ©μλλ‘λ§ κ΅¬μ± 1. toString() μΈμ€ν΄μ€μ λν μ 보λ₯Ό λ¬Έμμ΄λ‘ λ°ν, λ¬Έμμ΄μ ν΄λμ€ μ΄λ¦@16μ§μ ν΄μ¬ μ½λλ‘ μΆ..
λ€νμ± (polymorphism) νλμ κ°μ²΄κ° μ¬λ¬ κ°μ§ νμ μ κ°μ§ μ μλ κ² μ΅μμ ν΄λμ€ Animalμ μμλ°μ νμ ν΄λμ€ Human, Tiger, Eagleλ₯Ό μ μνλ€. Human, Tiger, Eagle κ°κ°μ ν΄λμ€λ λΆλͺ¨ ν΄λμ€μμ μ μν move λ©μλλ₯Ό μ¬μ μνλ€. (λ©μλ μ€λ² λΌμ΄λ©) Humanν΄λμ€μμλ§ μ μλ λ©μλ readBooksκ° μ‘΄μ¬νλ€. package polymorphism; import java.util.ArrayList; class Animal { public void move() { System.out.println("λλ¬Όμ΄ μμ§μ λλ€."); } } class Human extends Animal{ public void move(){ System.out.prin..
νμ ν΄λμ€κ° μμ±λλ κ³Όμ νμ ν΄λμ€κ° μμ±λ λ μμ ν΄λμ€κ° λ¨Όμ μμ±λ¨ μμ ν΄λμ€μ μμ±μκ° νΈμΆλκ³ νμ ν΄λμ€μ μμ±μκ° νΈμΆλ¨ νμ ν΄λμ€μ μμ±μμμλ 무쑰건 μμ ν΄λμ€μ μμ±μκ° νΈμΆλμ΄μΌ ν¨ νμ ν΄λμ€μμ μμ ν΄λμ€μ μμ±μλ₯Ό νΈμΆνλ μ½λκ° μλ κ²½μ° μ»΄νμΌλ¬λ μμ ν΄λμ€ κΈ°λ³Έ μμ±μλ₯Ό νΈμΆνκΈ° μν super()λ₯Ό μΆκ°ν¨ super()λ‘ νΈμΆλλ μμ±μλ μμ ν΄λμ€μ κΈ°λ³Έ μμ±μ λ§μ½ μμ ν΄λμ€μ κΈ°λ³Έ μμ±μκ° μλ κ²½μ°( 맀κ°λ³μκ° μλ μμ±μλ§ μ‘΄μ¬νλ κ²½μ° ) νμ ν΄λμ€λ λͺ μμ μΌλ‘ μμ ν΄λμ€μ μμ±μλ₯Ό νΈμΆν΄μΌ ν¨ μμμμ λ©λͺ¨λ¦¬ μν μμ ν΄λμ€μ μΈμ€ν΄μ€κ° λ¨Όμ μμ±λκ³ , νμ ν΄λμ€μ μΈμ€ν΄μ€κ° μμ±λ¨ μμ ν΄λμ€λ‘μ 묡μμ ν λ³ν ( μ μΊμ€ν ) ..
μ€λ₯μ μ’ λ₯ μ»΄νμΌ μ€λ₯ μ½λ μμ± μ€ λ¬Έλ²μ μΈ μ€λ₯ μ€ν μ€λ₯ (runtime error) μλ°λ λ°μ κ°λ₯ν μ€λ₯μ λν΄ μμΈμ²λ¦¬λ₯Ό νμ¬ νλ‘κ·Έλ¨μ΄ λΉμ μμ μΌλ‘ μ’ λ£λλ κ²μ λ§κ³ λ‘κ·Έλ‘ λ¨κΈΈ μ μλ€. μ€λ₯μ μμΈν΄λμ€ μ€λ₯ μμ€ν μ μΈ λΆλΆ, λ°λ³΅μ μΈ μ¬κ· νΈμΆλ‘ μΈν stack over flow λ± κ°μ λ¨Έμ μμ λ°μ λμ λ©λͺ¨λ¦¬λ₯Ό λ€ μ¬μ©ν κ²½μ° μμΈ νλ‘κ·Έλ¨μμ μ κ±° κ°λ₯ν μ€λ₯, μ½μΌλ €λ νμΌμ΄ μμ , λ€νΈμν¬ μμΌ μ°κ²° μ€λ₯ λ± → μλ° νλ‘κ·Έλ¨μμ μμΈμ λν μ²λ¦¬κ° κ°λ₯ν¨ μμΈλ₯Ό μ²λ¦¬νλ λ°©λ² try-catch try{ μμΈκ° λ°μν μ μλ μ½λ }catch(μ²λ¦¬ν μμΈ νμ e){ tryμμ μμΈ λ°μ μ μ¬κΈ°μ μμΈλ₯Ό μ²λ¦¬ tryμ μ½λκ° λͺ¨λ μ€νλλ€μ catchλ‘ μ€λκ²μ΄ μ..
μμ ν΄λμ€λ₯Ό μ μν λ κΈ°μ‘΄μ ꡬνλ ν΄λμ€λ₯Ό μμλ°μμ μμ± (λ³μ), κΈ°λ₯(λ©μλ)κ° νμ₯λλ κ² κΈ°μ‘΄μ ν΄λμ€λ₯Ό κ°μ Έλ€κ° μ‘°κΈ λ νμ₯μ κ°λ , μ΄μ§μ μΈ ν΄λμ€ λΌλ¦¬λ μμμ΄ μΌμ΄λμ§ μμ a class ← b class bν΄λμ€κ° aν΄λμ€λ₯Ό μμλ°λλ€. λ¨μΌ μμλ§ κ°λ₯ μμμ μ½λμ μ¬μ¬μ©μ΄ μλ μμλ°λ ν΄λμ€λ₯Ό νμ΄νλ‘ κ°λ¦¬ν΄ μμ ) κ³ κ°κ΄λ¦¬ νλ‘κ·Έλ¨ κ³ κ° μ€μλ μΌλ° κ³ κ° customer, λ¨κ³¨ κ³ κ° vipCustomerκ° μλ€. vipCustomer : μΌλ° κ³ κ°κ³Ό μμ±μ μ μ¬νμ§λ§ λ λ§μ ννμ κ°μ§κ² λ¨ μ ) μ ν ꡬ맀 μ 10% ν μΈ λ³΄λμ€ ν¬μΈνΈ 5% λ΄λΉ μλ΄μ λ°°μ μμλ°μ Customer ν΄λμ€ λ³μ μ κ·Ό μ νμλ₯Ό 보면 protectedλ‘ μ μΈμ΄ λμ΄μλ€. protect..
μ±κΈν€ ν¨ν΄ νλ‘κ·Έλ¨ λ΄μ λ¨ νλλ§ μ‘΄μ¬ν΄μΌ νλ κ²½μ°, κ°μ²΄λ₯Ό μ¬λ¬ λ² new μμ± μ μ¬λ¬ κ°μ μΈμ€ν΄μ€κ° μμ±λμμ λ λ¬Έμ κ° μκΈ°λ κ²½μ° staticμΌλ‘ μ μΌν κ°μ²΄λ₯Ό μμ±νλ€. μ±κΈν€ ν¨ν΄ κ΅¬μ± μμ λνμμ - λ private μ κ·Ό μ νμλ₯Ό κ°λ¦¬ν΄ μ±κΈν€ μ 체 κ΅¬μ± public class Company { private static Company instance = new Company(); private Company() {} public static Company getInstance() { if (instance == null) { return new Company(); } return instance; } } 1. private μμ±μ private Company() { } λ§μ½ ν΄..