JAVA

▶︎클래스◀︎

chojdsj 2023. 4. 30. 23:09
728x90
클래스(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