내가 개발해볼게!!

Do it! 자바 프로그래밍 입문 3일차 본문

Language/Java

Do it! 자바 프로그래밍 입문 3일차

보송송희 2022. 6. 12. 16:26

교재 맨앞쪽 진도표에 나와 있는 15일 코스로 공부하고 있습니다!!

Do it! 자바 프로그래밍 입문 3일차
05장 클래스와 객체 1
- 05-1 객체 지향 프로그래밍과 클래스
- 05-2 클래스 살펴보기
- 05-3 메서드
- 05-4 클래스와 인스턴스
- 05-5 생성자
- 05-6 참조 자료형
- 05-7 정보 은닉

  05장 클래스와 객체 1

  • 객체 지향 프로그래밍과 클래스에 대해 배웠습니다.

객체 지향 프로그래밍은 객체를 먼저 정의한 뒤 객체 사이에 일어나는 일, 객체의 기능을 구현하는 것입니다. 객체의 속성과 기능을 클래스로 구현합니다. C언어에서의 구조체(struct)가 확장된 개념이라고 생각할 수 있을 듯 합니다.

객체의 속성은 클래스 내부 변수로 선언되는데 이를 멤버 변수라고 합니다. 멤버 변수를 사용해 클래스의 기능을 구현한 것을 멤버 함수, 메서드라고 합니다.

 

  • 메서드에 대해 배웠습니다.

함수를 정의, 호출하고 값을 반환하는 방법에 대해 배웠습니다.

위 코드를 실행하면 스택에 main() 함수가 사용될 메모리 공간이 할당되고, add() 함수가 호출되면 스택에 add() 함수가 사용될 메모리 공간이 할당됩니다. add() 함수 실행이 끝나면 add() 함수에 할당되었던 메모리 공간은 해제됩니다. 

n1, n2는 add(), sub(), mul(), div() 함수 내에서만 사용되는 변수인데 이를 지역 변수라고 칭합니다.

 

  • 클래스와 인스턴스에 대해 배웠습니다.

클래스 내에 함수 getStudentName()을 생성한 뒤 main() 함수에서 실행시키는 코드입니다.

라인 22에서 new 예약어로 Student 클래스를 생성하는데 이를 인스턴스라고 합니다. 그리고 Student 클래스 자료형으로 선언한 studentBo 변수에 대입했습니다. studentBo를 참조 변수라고 하고 그 메모리 주소 값을 참조 값이라고 합니다.

 

  • 생성자에 대해 배웠습니다.

생성자클래스를 생성할 때 사용하는 클래스 이름과 같은 함수입니다. 클래스를 처음 만들 때 멤버 변수, 상수를 초기화하는 역할을 합니다.

클래스에 생성자가 두 개 이상 존재하는 경우를 생성자 오버로드라고 합니다.

 

  • 참조 자료형, 정보 은닉에 대해 배웠습니다.

한 클래스 안에 참조 변수가 너무 많이 존재하거나 참조 변수를 비슷한 것끼리 분리하고 싶을 때 클래스를 분리하여 참조할 수 있습니다.

변수를 private로 선언하면 그 변수는 외부 코드에서 사용할 수 없도록 제한됩니다. 이러한 변수를 외부 코드에서 사용하려면 클래스 내부에서 get(), set() 함수를 사용해야 합니다. 자바에서는 public, protected, private와 같은 접근 제어자가 사용됩니다.