보통 클래스 내 코드(한 파일)는 평균 200줄
= 변수의 개념
접근제어자 타입 변수명(=데이터); //변수를 선언하는 방법과 동일
클래스명 객체명 = new 클래스명(); //객체 생성
객체명.필드명
클래스 밖에서 쓰면 함수, 클래스 내에서 쓰면 메소드, 대부분 자바스크립트는 함수라고 명칭함. 암튼 자바같은 경우에는 항상 클래스 내에서 쓰기 때문에 메소드라고 칭함.
클래스명(){ ... }
클래스명(매개변수){ ... }
ex)
class Person{
String name;
String phone;
int age;
Person(String phone){
this.phone = phone;
}
}
expands 를 사용해서 상속 가능
class Car {
int wheels = 1;
void ride(){
System.out.println("와아아아앙");
}
void getWheelNum(){
System.out.println("바퀴 수는 "+ wheels + "개 입니다.");
}
}
//버스
class Bus extends Car {
int wheels = 4;
void ride(){
System.out.println("부릉부릉");
}
void getWheelNum(){
System.out.println("바퀴 수는 "+ wheels + "개 입니다.");
}
}
동일한 기능을 하는 메서드를 하나의 이름으로 처리할 수 있다는 장점이 있음
📖 클래스(Class)란?
Java에서 객체를 생성하기 위한 일종의 설계도이다.
흔히 붕어빵(객체)를 만들기 위한 붕어빵 틀(클래스)이라고 비유를 한다.
객체가 가지는 속성(필드)와 동작(메서드)으로 이루어져 있다.
이들은 생략될 수도 있고 하나 이상 작성될 수도 있다.
Java를 실행 시 클래스는 JVM 메모리의 클래스 영역(Class Area)에 로드된다.
📖 객체(Object)란?
물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서
자신의 속성을 가지고 있고, 다른 것과 식별 가능한 것을 말한다.
📖 인스턴스(Instance)란?
클래스가 붕어빵 틀이라면, 그 틀을 통해 생성된 객체(붕어빵) 하나하나를 해당 클래스의 인스턴스라 한다.
클래스를 사용하여 힙 영역(Heap Area)에 새로운 인스턴스(객체)를 생성할 수 있다.
즉, 인스터스란 현실의 객체를 소프트웨어 내에서 구현한 실체라고 볼 수 있다.