5μ£Όμ°¨ κ³Όμ : ν΄λμ€(νΌλλ°±, feedback)
π‘ κ°λ°μ μΈν°λ·° μ μ£Όμν΄μΌ λ μ¬νμ κ΄λ ¨λ μμ
- μ½λ© μΈν°λ·° κ΄λ ¨ μ± λ€μ λ¬Έμ νμ΄μλ§ μ§μ€λμ΄ μλ€.
www.youtube.com/watch?v=SZEHjcDSEdE
π βλΈλ‘ μ΄κΈ°νλ μμ±μ μ΄κΈ°ν μμΌλ©΄ μμ±μ μ΄κΈ°νλ‘ λ¨Ήλμ?
package choi.hyang.study.chapter5;
public class Init {
private int number;
// μ΄κΈ°ν λΈλ‘
{
this.number =10;
System.out.println("init block");
}
// μμ±μ λΈλ‘
public Init() {
this.number = 100;
System.out.println("constructor");
}
public static void main(String[] args) {
Init init = new Init();
System.out.println(init.number); // 100 μΆλ ₯
}
}
Reference
jeeneee.dev/java-live-study/week5-class/
[java-live-study] 5μ£Όμ°¨-ν΄λμ€
ν΄λμ€μ κ°μ²΄ ν΄λμ€λ κ°μ²΄μ§ν₯ νλ‘κ·Έλλ°(Object-oriented programming)μμ κ°μ²΄λ₯Ό μμ±νκΈ° μν΄ μνμ λμμ μ μνλ μΌμ’ μ μ€κ³λμ΄λ€. μ¬κΈ°μ κ°μ²΄λ μ€μ μΈκ³μ μ¬λ¬Ό λλ κ°λ μ μ»΄ν¨
jeeneee.dev
π μλ°μμμ call by value , call by reference
call by value, call by referenceλ Cλ C++ μμλ νμν κ°λ μ΄λ€.
μλ°λ call by value
νλ¨ λ§ν¬ μ½μ΄λ³΄κΈ°
μλ°μ λ©μλ(ν¨μ) νΈμΆ λ°©μ - Call by Value vs Call by Reference
λ©μλ(ν¨μ) νΈμΆ λ°©μ νλ‘κ·Έλλ° μΈμ΄μμ λ³μλ₯Ό λ€λ₯Έ ν¨μμ μΈμλ‘ λ겨 μ€ μ μμ΅λλ€. μ΄ λ μ΄ λ³μμ 'κ°'μ λ겨 μ£Όλ νΈμΆ λ°©μμ Call by Value, μ΄ λ³μμ 'μ°Έμ‘°κ°' (νΉμ μ£Όμ, ν¬μΈν°
siyoon210.tistory.com
5μ£Όμ°¨ κ³Όμ μ λν μ€λͺ μ΄ μλμ΄ μλ λ§ν¬
blog.naver.com/swoh1227/222175350122
μ¨λΌμΈ μλ° μ€ν°λ#5 - 5μ£Όμ°¨ κ³Όμ (μ΄μ§ νΈλ¦¬ λ Έλ μ½μ , μμ , μν, λλΉ μ°μ νμ(BFS), κΉμ΄ μ°
μ νλΈλ₯Ό ν΅ν΄ μλ° μ€ν°λλ₯Ό μ§ννλ νλ‘κ·Έλ¨μ΄ μμ΄ νλ² μ 리ν΄λ³ΌκΉ ν©λλ€.(μλλ ν΄λΉ λ§ν¬μ΄λ μ°Έ...
blog.naver.com
μμ±μ νΈμΆ μ thisλ μλ΅λμ΄ μμ§ μκ³ μμκ΄κ³λΌλ©΄ superλ§ μλ΅λμ΄ μλ€.
package choi.hyang.study.chapter5;
public class Init {
private int number;
private String name;
public Init(int number) {
// this(); μμ¨μλ€κ³ μλ΅λμ΄ μλ κ²μ΄ μλλ€.
this.number = number;
}
public Init() {
this.name = "whiteship";
}
public static void main(String[] args) {
Init init = new Init(3);
System.out.println(init.number);
System.out.println(init.name);
}
}
π finalν€μλλ μΈμ μ¬μ©νλ©΄ μ’λμ?
final ν€μλλ μμμ λ§μλ μ¬μ©νλ€.
μ€λ²λΌμ΄λ©μ λ§μ λλ λ©μλμ λΆμΈλ€.
programming.guide/java/when-to-create-a-final-class.html
Java: When to create a final class | Programming.Guide
A final class is simply a class that can’t be extended. It does not mean that all fields in the class are automatically final or that all references to this class would act as if they were declared as final. You should make a class final when the alterna
programming.guide
리νλ μ μ μ¬μ©νλ μ μ ν μ (μμ λͺ¨λ κ°λ°)
μ μμ λ€μ΄λ‘λ κ°λ°,,, μ½κ³ λΉ λ₯΄κ² νκ³ μΆλ€ (feat. μμ λ€μ΄λ‘λ λͺ¨λ κ°λ°κΈ°) - μ°μννμ
woowabros.github.io
ν μμμ λν μ’μ μ€λͺ
github.com/d-h-k/Java_Study/blob/main/Mobidic/%EC%9E%90%EB%B0%94%205%EC%B0%A8%EC%8B%9C.md
π μ΄λ Έν μ΄μ λ μ€λ²λΌμ΄λ©μ΄ λλμ?
μ΄λ Έν μ΄μ μ ν΄λμ€level μ€λ²λΌμ΄λ©μ λ©μλ levelμ΄λ―λ‘ μ§λ¬Έμ μ체μ μ€λ₯κ° μλ€.
π μΆμν΄λμ€μ μΈν°νμ΄μ€λ μ΄λ¨ λ μ¬μ©νλμ?
μ΅κ·Όμ μΈν°νμ΄μ€κ° λ°μ ν΄μ μΆμν΄λμ€λ₯Ό μ¬μ©νλ μλ―Έκ° μμ΄μ§ ( default λ©μλ λ±μ₯..)
(default λ©μλμ λν μ€λͺ μ λμλ° 8μμ λ£κ³ μ 리ν μ¬κΈ°μμ νμΈ κ°λ₯ν©λλ€.
κΈ°μ λ : μΈν°νμ΄μ€λ κ·μ½μ΄λ€.
ν λΉλμ μ€νλ§3λ₯Ό 보면 "μΈν°νμ΄μ€μ κ·μ½ κ³Ό ν¨μ©κ°μΉ" λΆλΆμ μ½μ΄λ³΄κΈ°
6μ£Όμ°¨ κ³Όμ
λ€μ΄λλ―Ή λ©μλ λμ€ν¨μΉ - java double dispatchμ λν μ€λͺ μμΌλ©΄ 무쑰건 ννΈ ♥
π μμ΄ κ³΅λΆ λ°©λ²μ? (κΈ°μ λ λ°©μ)
κ°λ¨μ μλ νμ λ€λκΈ° -> λ§νκΈ°κ° ν¬ν¨λ μν곡λΆνκΈ° (μ : μμ΄μμΈ , ν ν)
β¨ κ°μ λ£λ€κ° μκ°λμ μ°Ύμλ³Έ λ§ν¬
μλ° ν΄λμ€ λ°μ΄νΈ μ½λ μ½λ λ°©λ²
www.slipp.net/wiki/plugins/viewsource/viewpagesrc.action?pageId=8880219
μμ€ λ³΄κΈ°
Compiled from "LocalVariable.java" public class LocalVariable { public LocalVariable(); Code: 0: aload_0 1: invokespecial #1 // Method java/lang/Object." ":()V 4: return void local(); Code: 0: iconst_0 // μμ 0μ push => μ΄λμ pushνλμ§ λͺ¨λ₯΄
www.slipp.net