자바 프로그래밍 여덟 번째 수업

김형우·2022년 11월 2일
0

Java

목록 보기
8/22

1.지역변수에 접근제한자를 붙이지 않는 이유는?

지역변수는 스코프 안에서 사용 된 후 메모리에서 사라지기 
때문에 굳이 접근제한자를 붙일 필요가 없다.

2.static 변수의 다른 용어 3가지를 말해 보시오.

클래스 변수, 정적 변수, 공유 변수

3.자바의 메모리 영역을 3가지로 나누고, 해당 영역에 들어가는 정보를 말하여 보시오

메소드 영역, 힙, 콜 스택

메소드 영역 : 클래스, 클래스 변수
스택 영역 : 지역변수, 인자값, 리턴값
힙 영역 : 모든 인스턴스 변수들

4.static 변수의 접근 방법은?

객체를 생성한후 인스턴스를 이용해 접근하는 방법과
클래스명을 통해 직접 변수에 접근하는 방법이 있다.

5.클래스 변수의 활용의 예를 드시오.

Math.PI는

static final dobule PI = 3.141592.... 로 정의되어있다.

6.스태틱 함수에 인스턴스 변수가 올수 없는 이유는?

컴파일되면 스태틱 함수 또는 변수가 먼저 메모리에 할당되는데,
인스턴스 변수는 그 뒤에 정의되고 할당되기 때문이다.

7.인스턴스 함수안에 스태틱 변수와 함수가 올수 있는 이유는?

스태틱 변수는 같은 패키지(public이나 default 기준)
내에서 컴파일되었을때 전역변수나 전역메소드처럼 사용 가능하기 때문 (?)

8.메소드 오버로딩이란?

같은 메소드명을 가지고 자료형의 종류와 파라미터의 갯수를 다르게 한 것만으로 다중으로 정의 할 수있다.

9.메소드 오버로딩을 적용한 대표적인 함수는?

println함수가 있다.
println(3)
println(3.0)
println("3")은 모두
int형, double형, 문자열로 입력된 값에 따라서 오버로딩된 메소드를 통해 실행된다.

10.가위바위보 게임을 다시 한번 이해 하고 짜주시기 바랍니다.

a.java -> 가위바위보 게임을 실제로 하는 파일

변수 cpu의 가위바위보값 1 => 문자열
변수 cpu의 가위바위보값 2 => 상수

플레이어의 가위바위보값 1 => 문자열
플레이어의 가위바위보값 2 => 상수

두 문자 또는 상수를 변수를 비교해 승패를 확인하는 메소드정의

b.java -> main 메소드를 가진 파일

a 객체 생성
scanner 객체 생성

a 객체의 변수로 문자열을 받아옴

CPU의 Math.random 함수를 이용한 랜덤한 가위바위보값을 받아옴
(0~2 중의 정수)
0 -> 가위, 1 -> 바위 , 2 -> 보
로 대입해줌.

println ("플레이어가 낸 거")
println ("CPU가 낸 거")
a에서 정의했던 메소드를 이용해 두 값을 비교시킴.

1)

	a객체가 받아온 값을 cpu가 정수값을 받아서 문자열로 변환한거처럼
    문자열을 정수값으로 변환시켜 두 정수값을 비교하는 방법
    
2) 

	.equal 함수를 이용해 두 문자열을 비교해 비교하는 방법
profile
개발자 지망생

0개의 댓글