정리노트

[java] 변수 재정리, 객체지향

망고고래 2023. 10. 18. 17:21

Chapter2. 변수와 상수

1. 변수 생성

데이터타입 변수명;

  • 보라색은 예약어

 

2. 데이터타입에 따른 변수의 종류

데이터타입이란? 정보의 종류

보라색: 기본 데이터타입

검은색: 참조형(클래스명) 변수

  • 정수: byte, short, int, long
  • 실수: float, double
  • 문자: char, String
  • 논리: boolean
  • 참조형: 클래스명

 

3. 위치에 따른 변수의 종류

1)전역변수: 클래스 안에 생성

2)지역변수: 함수(메서드) 안에 생성

전역변수 사용 방법

①static

  • 미리 로딩됨(이미 존재함)
  • new 필요없음
  • 1개만 사용 가능

②인스턴스

  • 존재하지 않음
  • new 클래스명()으로 생성 후 사용
  • n개 사용 가능
  • 나중에(다음줄) 계속 사용하고 싶다면 클래스명 변수에 담아야 한다.
Scanner input = new Scanner(System.in);
int tmp1 = input.nextInt();
int tmp2 = new Scanner(System.in).nextInt();

 

 

4. 묶음 변수

1)배열

  • 같은 데이터들만 묶을 수 있다.
  • 데이터타입[] 변수명;
  • for과 같이 사용하는 경우가 많다.
  • 보통 for each를 많이 사용한다.

 

2)객체

  • 다른 데이터도 같이 묶을 수 있다.
  • 클래스 작성
  • new 클래스명();
  • 참조변수.변수명;

 

 

 

 

Chapter6 클래스

객체지향 익히기: 인사관리 프로그램 만들기

 

프로그램을 실행하고 1을 누르면 클래스 add_member의 add() 메서드가 실행된다.

add_member 클래스

member 클래스의 인스턴스를 생성해서 사용한다.

member 클래스

그리고 member 클래스의 인스턴스에 저장한 값을 저장해두기 위한 클래스 bank가 있다.

bank 클래스

bank 클래스의 코드는 다소 낯설다.

참조변수 중에서 익숙한 Scanner를 참조하는 변수와 비교해보면,

Scanner        sc         = new Scanner(System.in);

member[] allmember = new member[100];

으로 크게 다르지 않은 것을 알 수 있다.

 

프로그램을 실행하고 2를 누르면 printer 클래스의 all_printer()메서드가 실행된다. 모든 사원 정보가 출력된다.

 

프로그램을 실행하고 3을 누르면 printer class의 one_printer()메서드가 실행된다.

모든 사원 정보를 출력하는 all_printer와 마찬가지로 for문을 사용해 배열의 모든 칸을 훑는다.

차이점은 if문이 추가되어 mb.memno가 입력된 no와 같을 경우 해당 정보만 출력한다는 것이다.

 

프로그램을 실행하고 4를 누르면 실행되는 '사원 수정'도 one_printer와 비슷한 코드를 사용한다.

Scanner를 사용해 수정할 값을 선택하고 switch문과 Scanner로 수정하는 것이 추가되었다.

 

 

아직 배열도 낯설고 객체지향이라는 개념이 낯설기만 하다.

익숙해질 때까지 계속 코드를 치는 수밖에 없을 것 같다.

'정리노트' 카테고리의 다른 글

[java]클래스와 인스턴스, 상속  (0) 2023.10.20
[java]클래스, this  (0) 2023.10.19
[java]클래스  (0) 2023.10.17
[java]제어문 연습, 배열  (0) 2023.10.16
[java] 제어문  (0) 2023.10.13