μΈνλ° κ²°μ
μ λ² νΌλκΉμ§ ν΄μ λ¬΄λ£ κ°μκ° λͺ¨λ λμ΄ λ¬λ€ !
λ무 μ μ΅νκ³ λ μ€λͺ λ μν΄μ£Όμ μ μ΄ν΄κ° μ¬μ λ€. κ·Έλμ λ·λΆλΆκΉμ§ λ§μ λ£κ³ μΆμ΄μ μΈνλ°μμ νκ°μλ₯Ό κ²°μ νλ€.
λλ νμκ°μ ν μΈ λ°μμ 6λ§μ ? μ λμ κ²°μ ν κ² κ°λ€.
λ©°μΉ λμ λΈλ‘κ·Έλ₯Ό λͺ» μ¬λ¦° μ΄μ λ λ΄κ° ν μ΅μν(2/5)μ 보λλΌ λ°μκΈ°λ νκ³ , λ μ΄λ² κ°μ νμ°¨κ° μ λ κΈΈμλ€.
λ³΄ν΅ ν μ±ν°μ 1μκ° μ λλ‘ λκΈ°κΈΈλ ν루μ νκ°μ© 보λ κ±Έλ‘ λͺ©νλ₯Ό μΌμλλ° μ΄λ²μλ 3μκ°μ΄ λμλ€...
κ·Έλ¦¬κ³ λ λ΄κ° μΌλ³Έ μ¬νμ κ°κ² λμ΄μ μ€λΉκΉμ§ νλ€λ³΄λ λ©°μΉ λΈλ‘κ·Έλ₯Ό μ¬μλ€ γ γ
ν΄λμ€
μ΄λ² μ±ν°λ μ λ§ μ΄λ €μ λλ°, μ²μ μ νλ κ°λ μ΄ λ§μ΄ λμ¨ κ² κ°λ€.
κ·Έλλ μ²μμλ μ΄ν΄ν λ§ νμ§λ§ λ€λ‘ κ° μλ‘ λ©λΆμ μ°μ,,,
μλ°μμ ν΄λμ€(class)λ κ°μ²΄λ₯Ό μ μνλ ν λλ μ€κ³λμ κ°μ μλ―Έλ‘ μ¬μ©λ©λλ€.
μλ°μμλ μ΄λ¬ν μ€κ³λμΈ ν΄λμ€λ₯Ό κ°μ§κ³ , μ¬λ¬ κ°μ²΄λ₯Ό μμ±νμ¬ μ¬μ©νκ² λ©λλ€.
ν΄λμ€λ κ°μ²΄μ μνλ₯Ό λνλ΄λ νλ(field)μ κ°μ²΄μ νλμ λνλ΄λ λ©μλ(method)λ‘ κ΅¬μ±λ©λλ€.
μ¦, νλ(field)λ ν΄λμ€μ ν¬ν¨λ λ³μ(variable)λ₯Ό μλ―Έν©λλ€.
λν, λ©μλ(method)λ μ΄λ ν νΉμ μμ μ μννκΈ° μν λͺ λ Ήλ¬Έμ μ§ν©μ΄λΌ ν μ μμ΅λλ€.
μΆμ² : http://www.tcpschool.com/java/java_class_intro (TCP School)
package chap_07;
public class _01_Class {
public static void main(String[] args) {
// κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ° (OOP : Object-Oriented Programming)
// μ μ§λ³΄μ μ©μ΄
// λμ μ¬μ¬μ©μ±
// μ°¨λμ© λΈλλ°μ€
// λͺ¨λΈλͺ
, ν΄μλ, κ°κ²©, μμ
// 첫 λ²μ§Έ μν
String modelName = "κΉλ§μ΄";
String resolution = "FHD";
int price = 200000;
String color = "λΈλ";
// λ λ²μ§Έ μν
String modelName2 = "νμμ΄";
String resolution2 = "UHD";
int price2 = 300000;
String color2 = "νμ΄νΈ";
// λ λ€λ₯Έ μ νμ κ°λ° ?
BlackBox bBox = new BlackBox();
// BlackBox ν΄λμ€λ‘λΆν° bBox κ°μ²΄ μμ±
// bBox κ°μ²΄λ BlackBox ν΄λμ€μ μΈμ€ν΄μ€
BlackBox bBox2 = new BlackBox();
}
}
package chap_07;
public class BlackBox {
String modelName; // λͺ¨λΈλͺ
String resolution; //
int price;
String color;
int serialNumber;// μλ¦¬μΌ λ²νΈ
static int counter = 0; // μλ¦¬μΌ λ²νΈλ₯Ό μμ±ν΄μ£Όλ μν (μ²μμ 0, ++ μ°μ°μ ν΅ν΄ κ° μ¦κ°)
static boolean canAutoReport = false; // μλμ κ³ κΈ°λ₯
BlackBox() {
// System.out.println("κΈ°λ³Έ μμ±μ νΈμΆ");
// this.serialNumber = ++counter;
// System.out.println("μλ‘μ΄ μλ¦¬μΌ λλ²λ₯Ό λ°κΈλ°μμ΅λλ€ : " + this.serialNumber );
}
BlackBox(String modelName, String resolution, int price, String color) {
// this(); // κΈ°λ³Έ μμ±μ νΈμΆ
//
// System.out.println("μ¬μ©μ μ μ μμ±μ νΈμΆ");
// this.modelName = modelName;
// this.resolution = resolution;
// this.price = price;
// this.color = color;
}
void autoReport() {
if (canAutoReport) {
System.out.println("μΆ©λμ΄ κ°μ§λμ΄ μλμΌλ‘ μ κ³ ν©λλ€.");
} else {
System.out.println("μλ μ κ³ κΈ°λ₯μ΄ μ§μλμ§ μμ΅λλ€.");
}
}
void insertMemoryCard(int capacity) {
System.out.println("λ©λͺ¨λ¦¬ μΉ΄λκ° μ½μ
λμμ΅λλ€.");
System.out.println("μ©λμ " + capacity + "GB μ
λλ€.");
}
int getVideoFileCount(int type) {
if (type == 1) { // μΌλ° μμ
return 9;
} else if (type == 2) { // μ΄λ²€νΈ μμ
return 1;
}
return 0;
}
// showDataTime : λ μ§μ 보 νμμ¬λΆ
// showSpeed : μλμ 보 νμμ¬λΆ
// min : μμ κΈ°λ‘ λ¨μ(λΆ)
void record(boolean showDateTime, boolean showSpeed, int min) {
System.out.println("λ
Ήνλ₯Ό μμν©λλ€.");
if (showDateTime) {
System.out.println("μμμ λ μ§μ λ³΄κ° ν¬ν¨λ©λλ€.");
}
if (showSpeed) {
System.out.println("μμμ μλμ λ³΄κ° νμλ©λλ€.");
}
System.out.println("μμμ "+ min + "λΆ λ¨μλ‘ κΈ°λ‘λ©λλ€.");
}
void record() { // μΌλ°μ methodλ κ°μ²΄κ° λ§λ€μ΄μ ΈμΌ μ¬μ©κ°λ₯
record(true, true, 5); // κΈ°λ³Έκ°μΌλ‘ μ§μ > μμ μ΄ νμν λ κ°νΈ
}
static void callServiceCenter() { // staticμ΄ λΆμΌλ©΄ calss methodμ΄λ―λ‘ λ―Έλ¦¬ μ¬μ©κ°λ₯
System.out.println("μλΉμ€ μΌν°(1588-0000)λ‘ μ°κ²°ν©λλ€.");
canAutoReport = false; // instance variableμ static λ΄μμ μ¬μ© λΆκ°
}
void appendModelName(String modelName) {
this.modelName += modelName; // this.μ λΆμ΄λ©΄ instance λ³μ
}
// Getter & Setter
String getModelName() { // getter
return modelName;
}
void setModelName(String modelName) { // setter
this.modelName = modelName;
}
String getResolution() {
if ( resolution == null || resolution.isEmpty()) {
return "ν맀μμκ² λ¬ΈμνμΈμ";
}
return resolution;
}
void setResolution(String resolution) {
this.resolution = resolution;
}
int getPrice() {
return price;
}
void setPrice(int price) {
if (price < 100000) {
this.price = 100000;
}
}
String getcolor() {
return color;
}
void setColor(String color) {
this.color = color;
}
}
μ΄λ° μ λ° μ¬λ¬ μ±ν°λ₯Ό μννλ€ λ³΄λ BlackBoxμ μ½λκ° κΈΈμ΄μ‘μ§λ§, λ€μ μ½λλ BlackBox ν΄λμ€λ₯Ό νμ±ν κ²μ΄κ³ μμ μ½λλ BlackBox ν΄λμ€λ‘λΆν° bBoxλΌλ μΈμ€ν΄μ€λ₯Ό μμ±ν κ²μ΄λ€.
μ κ·Ό μ μ΄μ
// μ κ·Ό μ μ΄μ
// private : ν΄λΉ ν΄λμ€ λ΄μμλ§ μ κ·Ό κ°λ₯
// public : λͺ¨λ ν΄λμ€μμ μ κ·Ό κ°λ₯
// default : (μ무κ²λ μ μ§ μμμ λ) κ°μ ν¨ν€μ§ λ΄μμλ§ μ κ·Ό κ°λ₯
// protected : κ°μ ν¨ν€μ§ λ΄μμ, λ€λ₯Έ ν¨ν€μ§μΈ κ²½μ° μμ ν΄λμ€μμ μ κ·Ό κ°λ₯
enum
package chap_07;
public class _18_Enum {
public static void main(String[] args) {
// μ΄κ±°ν (Enum)
// λ¬λ ₯ : JAN, FEB, MAR, ...
// μ· μ¬μ΄μ¦ : S, M, L, XL, ...
// OS μ’
λ₯ : WIN10, WIN11, MACOS, LINUX, ...
Resolution resolution = Resolution.HD;
System.out.println(resolution);
resolution = Resolution.FHD;
System.out.println(resolution);
System.out.print("λμμ λ
Ήν νμ§ :");
switch (resolution) {
case HD :
System.out.println("μΌλ°νμ§");
break;
case FHD :
System.out.println("κ³ νμ§");
break;
case UHD:
System.out.println("μ΄κ³ νμ§");
break;
}
resolution = Resolution.valueOf("UHD");
System.out.println(resolution);
System.out.println("-------------------");
for (Resolution myRes: Resolution.values()) {
System.out.println(myRes.name() + " : " + myRes.ordinal());
}
System.out.println("--------------------");
for (Resolution myRes : Resolution.values()) {
System.out.println(myRes.name() + " : " + myRes.getWidth());
}
}
}
enum Resolution {
HD(1280), FHD(1920), UHD(3840);
private final int width;
Resolution(int width) {
this.width = width;
}
public int getWidth() {
return width;
}
}
enumμ΄λΌκ³ νλ μ΄κ±°νμ Cμμ λ³Έ κ² κ°μμ§λ§, λ λ―μ€μλ€.
private μ κ·Όμ μ΄μλ₯Ό μ¬μ©νμ¬ widthλ₯Ό μ μΈνκ³ μ΄μ©κ³ .. μ¬μ€ μμ§ μ΄ν΄ λͺ»νλ€ γ γ
ν΄μ¦ νλ©΄μ μ°μ΅ν΄λ΄μΌμ§
Quiz #7
ν΄λμ€λ₯Ό μ΄μ©ν΄μ νλ²κ±°, μΉμ¦λ²κ±°, μμ°λ²κ±°λ₯Ό λ§λλ νλ‘κ·Έλ¨μ μμ±νλ ν΄μ¦μλ€.
κ° λ²κ±°μ μ¬λ£λ₯Ό μ£Όκ³ , main μμμ μ μν΄μ£Όλ©΄μ μνλ μ€νκ²°κ³Όκ° λμ€λλ‘ νλ©΄ λμλ€.
package chap_07;
public class _Quiz_07 {
public static void main(String[] args) {
HamBurger[] hamBurgers = new HamBurger[3];
hamBurgers[0] = new HamBurger();
hamBurgers[1] = new CheeseBurger();
hamBurgers[2] = new ShirimpBurger();
System.out.println("μ£Όλ¬Ένμ λ©λ΄λ₯Ό λ§λλλ€.");
System.out.println("--------------------");
for (HamBurger hamBurger : hamBurgers) {
hamBurger.cook();
System.out.println("--------------------");
}
System.out.println("λ©λ΄ μ€λΉκ° μλ£λμμ΅λλ€.");
}
}
class HamBurger {
public String name ;
public HamBurger() {
this("νλ²κ±°");
}
public HamBurger(String name) {
this.name = name;
}
public void cook() {
System.out.println(this.name + "λ₯Ό λ§λλλ€.");
System.out.println("λΉ΅ μ¬μ΄μ λ€μ΄κ°λ μ¬λ£λ ?");
System.out.println("> μμμΆ");
System.out.println("+ ν¨ν°");
System.out.println("+ νΌν΄");
// μ¬λ£ : μμμΆ, ν¨ν°, νΌν΄
}
}
class CheeseBurger extends HamBurger {
public CheeseBurger() {
super("μΉμ¦λ²κ±°");
}
public String name;
public void cook() {
// μ¬λ£ : μμμΆ, ν¨ν°, νΌν΄, μΉμ¦
super.cook();
System.out.println("+ μΉμ¦");
}
}
class ShirimpBurger extends HamBurger {
public ShirimpBurger() {
super("μμ°λ²κ±°");
}
public String name;
public void cook() {
// μ¬λ£ : μμμΆ, ν¨ν°, νΌν΄, μμ°
super.cook();
System.out.println("+ μμ°");
}
}
μ‘°κΈ ν€λ§Έλ€.
μ¬μ€μ μ‘°κΈ λ§μ΄.
μ¬κΈ°μ public Hamburger() μμλΆν° this("νλ²κ±°")λ₯Ό νκ³ public Hamburger(String name)κΉμ§μ λΆλΆμ΄ μ΄ν΄κ° μλλ€
λλ¨Έμ§λ μκ² λλ°,,,
νμ¬νΌ ν΄λμ€λ μλ μ΄λ €μΈ κ±°λΌκ³ μμμ ν΄μ μ‘°κΈ λ 곡λΆν΄λ΄μΌ ν κ² κ°λ€.
μ€λμ μλ° λ !
λλμ½λ© μλ° κ°μ
λλμ½λ©μ μλ° κΈ°λ³ΈνΈ - νμ½μ€ (20μκ°) - μΈνλ° | κ°μ
λ°°μμ μ¦κ±°μμ μκ² ν΄μ£Όλ κ°μ. λλμ½λ©μ μλ° κΈ°λ³ΈνΈμ μκ°ν©λλ€., - κ°μ μκ° | μΈνλ°...
www.inflearn.com
'π΅ java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
JAVA | μ½λλΌλΌ μλ° κ°μ (μνκΈ° λ§λ€κΈ°) (0) | 2023.03.27 |
---|---|
JAVA | λλμ½λ© μλ° κ°μ (μΆμν΄λμ€, μΈν°νμ΄μ€) _ Quiz#8 (0) | 2023.02.10 |
JAVA | λλμ½λ© μλ° κ°μ (λ©μλ) _ Quiz#6 (0) | 2023.02.03 |
JAVA | λλμ½λ© μλ° κ°μ (λ°°μ΄) _ Quiz#5 (0) | 2023.02.01 |
JAVA | λλμ½λ© μλ° κ°μ (쑰건문, λ°λ³΅λ¬Έ) _ Quiz#4 (2) | 2023.01.31 |