JAVA BASIC6

으누·2024년 8월 31일
0

클래스(반) ex. 자동차 반, 음식 반

자동차
String 브랜드
String 컬러
long 가격

엔진스타트(){}
엔진스탑(){}

자동차 엄마차;

자동차 엄마차 = new 자동차()

객체화(instance)

클래스(반) * 타입을 하나 만드는거다.

공통요소를 한 번만 선언해놓고 가져다 사용만 하도록 설계한다.

1. 타입이다.
	클래스 안에 선언된 변수와 메소드를 사용하고 싶다면
	해당 클래스의 타입으로 객체를 선언해야 한다.

2. 주어이다.
	원숭이가 먹는다 바나나를
	Monkey.eat("바나나");

클래스의 선언

class 클래스명 {
	필드(변수, 메소드);
}

클래스 필드의 사용

1. 객체화(instance) :
	- 객체(instance variable)를 만드는 작업
	- 추상적인 개념을 구체화 시키는 작업
	- 클래스명 객체명 = new 생성자();	//선언
	- 객체명.필드명			//사용

※ . (마침표)
- 하위 연산자, 멤버변수 접근 연산자, 닷 연산자, 점 연산자
- 주소값 뒤에서만 사용이 가능하며 해당 주소를 참조하는
명령어다.

2. static 키워드를 사용하여 클래스 이름으로 직접 접근할 수 있다.
static필드는 컴파일러가 최초 한 번만 메모리에 올려주기 때문에
객체로 접근할 필요가 없다. 이러한 필드를 static필드라고 부른다.

생성자

클래스 이름 뒤에 소괄호가 있는 형태, 메소드와 기능은 똑같지만
메소드라고 부르지 않는다. 생성자는 리턴이라는 기능이 존재하지
않기 때문이다.

- 해당 클래스의 필드를 메모리에 할당한 후 부여된 주소값을
가져온다.

기본 생성자

매개변수가 없는 생성자이며 클래스 선언시 자동으로 선언된다.
사용자가 직접 기본생성자를 선언하게 되면 생성자는 자동으로 만들어지지 않는다.

this

필드에 접근한 객체가 누구인지 알아야 해당 필드에 접근할 수가 있다.
이 때 접근한 객체가 가지고 있는 필드의 주소값이 this라는 변수에 자동으로
담긴다.

Storage class(저장 기억 부류)

	Stack		Data영역
    지역변수, 매개변수	전역변수, 정적변수(static)

초기화 직접 자동
생명주기 } new , 프로그램 종료시

※static
모든 객체가 공유해야할 때 사용한다.

다형성(polymorphism)

1. 오버로딩(OverLoading)
	매개변수의 개수 또는 타입이 다르면 동일한 이름의 메소드로
	선언할 수 있다.

profile
코딩 일기장

0개의 댓글