클래스(class)
- 클래스란? 객체의 특성(속성,기능) 을 정의한 것
- 객체를 만들기 위한 설계도
Static
- 공유 메모리영역 또는 정적 메모리영역 이라고도 한다.
- why? 프로그램 시작 시 static 이 붙은 코드들이 모두 static 영역에 생성되고, 프로그램이 종료될때 까지 사라지지 않는다(정적) 그리고 static 영역에 생성된 변수는 어디서든지 공유할 수 있다.(공유)
- 사용방법 : 클래스명.변수명
schoolName 필드가 static 으로 선언되어져 있기 때문에
클래스명인 Student를 사용해서 schoolName 초기화를 진행한다.
필드(field)
- 객체의 속성을 작성하는 클래스 내부 영역
- 인스턴스 변수 : 필드에 작성되는 일반 변수
- 클래스 변수(static 변수) : 필드에 static 예약어가 작성된 변수
- 필드의 접근제한자
생성자(constructor)
- new 연산자를 통해서 객체를 생성할 때 생성된 객체의 필드값 초기화 + 지정된 기능을 수행하는 역할
- 생성자 작성 규칙
1) 생성자의 이름은 반드시 클래스명과 같아야 한다.
2) 반환형이 존재하지 않는다
- 생성자의 종류
1) 기본 생성자 : 작성하지 않은 경우, 클래스 사용 시 컴파일러가 자동으로 기본 생성자 생성
2) 매개변수 생성자 : 객체 생성시 전달받은 값으로 객체를 초기화 하기위해 사용 , 매개변수 생성자 작성 시 컴파일러가 기본 생성자를 자동으로 생성해주지 않음
- this란?
모든 인스턴스의 메소드에 숨겨진 채 존재하는 레퍼런스로, 할당된 객체를 가리킴 함수 실행 시 전달되는 객체의 주소를 자동으로 받음
위와 같이 매개변수를 가지는 생성자에서 매개변수 명이 필드명과 같은 경우 매개변수의 변수명이 우선이므로 this 객체를 이용하여 대입되는 변수가 필드라는 것을 구분해줌
메소드(Method)
- 수학의 함수와 비슷하며 호출을 통해 사용, 전달 값이 없는 상태로 호출을 하거나 어떤 값을 전달하여 호출을 하며, 함수 내에 작성된 연산 수행. 수행 후 반환 값 / 결과 값은 있거나 없을 수 있음
- setter 메소드 : 필드에 변경할 값을 전달 받아서 필드 값을 변경하는 메소드
필드들이 접근제한자 private으로 같은 클래스 내부에서만 사용가능하게 되어있다.
setter 메소드로 외부에서 필드값에 값을 넣어준다.
- getter 메소드 : 필드에 기록된 값을 읽어서 요청한 쪽으로 읽은 값을 넘기는 메소드
위에 setter 메소드로 필드에 넣어준 값을 getter 메소드로 가져오는 모습이다.
- return 메소드 : 해당 메소드를 종료하고 자신을 호출한 메소드로 돌아가는 예약어 반환 값이 있다면 반환 값을 가지고 자신을 호출한 메소드로 돌아감
'JAVA' 카테고리의 다른 글
▶︎객체 배열◀︎ (0) | 2023.05.03 |
---|---|
▶︎회원가입◀︎ (0) | 2023.05.02 |
▶︎객체(OOP)◀︎ (0) | 2023.04.30 |
▶︎2차원 배열◀︎ (0) | 2023.04.27 |
▶︎배열◀︎ (0) | 2023.04.24 |