2021-12-20 수업 내용

범고래·2021년 12월 23일
0

비트캠프 수업내용

목록 보기
16/20

(1) 자바의 메서드

1) 메서드의 스택
https://github.com/InfraWhale/bitcamp-Study/tree/main/java-lang/app/src/main/java/com/eomcs/lang/ex07

Exam0440.java ~ Exam0461.java 참고

  • 메서드 호출과 JVM 스택 메모리 영역 - Exam0440.java

    • 1단계 : main 메서드가 m1 메서드 실행하고 m1 메서드가 m2 메서드 실행. 105가 리턴된 후 JVM Stack에서 m2 메서드의 메모리 제거.
    • 2단계 : m1 메서드가 m3 메서드 실행. 205가 리턴된 후 JVM Stack에서 m3 메서드의 메모리 제거.
    • 3단계 : 310이 리턴된 후 JVM Stack에서 m1 메서드의 메모리 제거.
    • 4단계 : JVM Stack에서 main 메서드의 메모리 제거.
  • Exam0450.java에서, 변수가 늘면 함수를 호출할 때마다 사용하는 메모리가 커진다. 이때, 너무 많이 재귀호출되면 메모리 넘쳐서 stackoverflow 에러가 발생한다.

  • 재귀호출과 JVM Stack

2) main 메서드
https://github.com/InfraWhale/bitcamp-Study/tree/main/java-lang/app/src/main/java/com/eomcs/lang/ex07

Exam0510.java ~ Exam0540.java 참고

  • cmd에서 main 메서드에 argument 넘겨주는 예시
    C:\Users\gyqja\git\bitcamp-Study\java-lang\app>java -cp bin/main com.eomcs.lang.ex07.Exam0520 aaa bbb ccc

3) JVM 아규먼트
https://github.com/InfraWhale/bitcamp-Study/tree/main/java-lang/app/src/main/java/com/eomcs/lang/ex07

Exam0610.java ~ Exam0630.java 참고

  • cmd에서 JVM에 JVM 아규먼트 넘겨주는 예시
    C:\Users\gyqja\git\bitcamp-Study\java-lang\app>java -Dname=홍길동 -Dkor=90 -Deng=80 -Dmath=100 -cp bin/main com.eomcs.lang.ex07.Exam0620

(2) 바이트코드 작성

  • 바이트코드를 직접 작성할 수는 있지만, 권장하지는 않는다.

(3) Assembly language와 기계어

(4) Wrapper 클래스와 데이터 변환 함수

profile
끝없는 대양에서의 항해를 위해

0개의 댓글