κΉμ μ
νμΈλνκ΅ 22νλ² μ»΄ν¨ν°κ³΅νκ³Ό
νμΈλνκ΅ 22νλ² μ»΄ν¨ν°κ³΅νκ³Ό
μΆμ λΉλ: μ
λΉμΆνκ·Έ: ν΄λμ€, μΈμ€ν΄μ€, μμ, μΆμ ν΄λμ€, μΈν°νμ΄μ€
System.out.print()System.out.println()System.out.printf()ν΄λμ€ λ΄ λ©€λ²λ€μ μ κ·Ό μμ€μ κ²°μ νλ ν ν°μΌλ‘, νλ‘κ·Έλ¨, ν¨ν€μ§, νμ ν΄λμ€, μμ μ ν΄λμ€ μμΌλ‘ μ κ·Όμμ€μ κ²°μ ν¨
| μ νμ | μ€λͺ |
|---|---|
| public | λͺ¨λ κ°μ²΄μμ μ κ·Ό κ°λ₯ |
| default | κ°μ ν¨ν€μ§ λ΄μμ μ κ·Ό κ°λ₯ |
| protected | μμ κ³Ό νμ ν΄λμ€μμλ§ μ κ·Ό κ°λ₯ |
| private | μμ μ ν΄λμ€μμλ§ μ κ·Ό κ°λ₯ |
// μΈμ€ν΄μ€ μμ±
<ν΄λμ€λͺ
> <λ³μλͺ
> = new <ν΄λμ€λͺ
>();
// μΈμ€ν΄μ€ λ©€λ² μ κ·Ό
<κ°μ²΄λ³μ>.<λ©€λ²μ΄λ¦>
public class Variable {
int c; // μΈμ€ν΄μ€λ³μ(λ©€λ²λ³μ)
static String d; // ν΄λμ€ λ³μ(λ©€λ²λ³μ)
void func(int c){ // λ§€κ°λ³μ(μ§μλ³μ)
this.c = c; // λ©€λ²λ³μ cμ μ§μλ³μ cκ° ν λΉ
}
public static void main(String args[]) {
int a = 30; // μ μνλ³μ(μ§μλ³μ)
Variable b = new Variable(); // μ°Έμ‘°νλ³μ(μ§μλ³μ)
b.func(a);
}
}
[<μ κ·Όμ νμ>] static <μλ£ν> <λ³μλͺ
>;extends ν€μλλ₯Ό μ¬μ©ν΄μ μμν΄λμ€ μ§μ class <νμ ν΄λμ€λͺ
> extends <μμ ν΄λμ€λͺ
> { ... }class SuperObject {
public void paint() {
draw();
}
public void draw() { // 4. μ€λ²λΌμ΄λ©λ νμ ν΄λμ€μ paint νΈμΆ
draw(); // 3. μκΈ°μμ λ€μ νΈμΆν¨
System.out.println("Super Object"); // 6. λ§μ§λ§μ μΆλ ₯
}
}
class SubObject extends SuperObject {
public void paint() {
super.draw(); // 2. μ€μ νΈμΆλλ λ©μλ -> μμ ν΄λμ€μ draw λ©μλ νΈμΆ
}
public void draw() {
System.out.println("Sub Object"); // 5. λ¬Έμμ΄ μΆλ ₯
}
}
public class Main {
public static void main(String[] args) {
SuperObject b = new SubObject(); // 1. μμ μ°Έμ‘°λ³μλ‘ μ
μΊμ€ν
b.paint();
}
}
// κ²°κ³Ό
// Sub Object
// Super Object
abstract class Shape { // μΆμ ν΄λμ€ μ μ
abstract void draw(); // μΆμ λ©μλ μ μ
}
class Circle extends Shape {
void draw() { // μΆμ λ©μλ μ€λ²λΌμ΄λ©
System.out.println("μμ 그립λλ€");
}
}
class Rectangle extends Shape {
void draw() { // μΆμ λ©μλ μ€λ²λΌμ΄λ©
System.out.println("μ¬κ°νμ 그립λλ€");
}
}
public class Helloworld {
public static void main(String[] args) {
Circle c1 = new Circle();
Rectangle r1 = new Rectangle();
c1.draw(); // λ©μλλͺ
ν΅μΌ κ°λ₯
r1.draw();
}
}
// κ²°κ³Ό
// μμ 그립λλ€
// μ¬κ°νμ 그립λλ€
λ€μ€ μμμ λ¬Έμ μ μ ν΄κ²°νκΈ° μν λ°©λ²μΌλ‘, μλ°λ λ μ΄μμ μμ ν΄λμ€λ₯Ό μμλ°λ λ€μ€μμμ κΈμ§ν¨. λ€μ€μμμ λ°©μ§νλ©΄μ λ€μ€μμμ μ΄μ μ κ°μ§λ κΈ°λ₯μ΄ μΈν°νμ΄μ€μ
interfaceμ implements ν€μλλ₯Ό μ¬μ©ν΄μ ꡬν, μμinterface Coffee { // μμ
abstract void drink_coffee();
}
interface Cookie { // μμ
abstract void eat_cookie();
}
class Cafe implements Coffee, Cookie { // νμ
public void drink_coffee() {
System.out.println("컀νΌλ₯Ό λ§μ λ€.");
}
public void eat_cookie() {
System.out.println("μΏ ν€λ₯Ό λ¨Ήλλ€.");
}
public void talk() {
System.out.println("λνλ₯Ό νλ€.");
}
}
public class HelloWorld {
public static void main(String[] args) {
Cafe k = new Cafe();
k.drink_coffee();
k.eat_cookie();
k.talk();
Coffee c = k; // μ
μΊμ€ν
c.drink_coffee(); // 컀νΌλ§ λ§μ€ μ μμ
Cookie x = k; // μ
μΊμ€ν
x.eat_cookie(); // μΏ ν€λ§ λ¨Ήμ μ μμ
}
}
public class HelloWorld {
public static void main(String[] args) {
try { // μμΈ κ°μ§ μμ
<μ½λ μμ>
}
catch() { // μμΈ κ°μ§ μ μ€ν μμ
<μ½λ μμ>
}
finally { // 무쑰건 μ€νλλ μμ
<μ½λ μμ>
}
}
}
νλμ νλ‘μΈμ€(νλ‘κ·Έλ¨)μμ λ μ΄μμ μΌμ λμμ μννλ κ²
class Box extends Thread { // Thread ν΄λμ€ μμ
public void run() { // run λ©μλ μ¬μ μ
System.out.println("message"); // μ€λ λ μ€ν μ μνλλ μμ
}
}
public class Main {
public static void main(String[] args) {
Box a = new Box(); // μΌλ°μ μΈ κ°μ²΄ μμ± λ°©μ
a.start(); // μ€λ λ μν λ©μλ
}
}
// κ²°κ³Ό
// message
class Box implements Runnable { // implements μΈν°νμ΄μ€ μμ
public void run() { // run λ©μλ μ¬μ μ
System.out.println("message"); // μ€λ λ μ€ν μ μνλλμμ
}
}
public class Main {
public static void main(String[] args) {
Thread t = new Thread(new Box()); // Thread μμ±μμμ λ€λ₯Έ μμ±μ νΈμΆ
t.start(); // μ€λ λ μν λ©μλ
}
}
// κ²°κ³Ό
// message