Java
-
[live-study] 1: JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가.개발/Java 2020. 12. 23. 19:49
백기선님이 진행하시는 live-study 1주차 과제 1주차 과제 목표 자바 소스 파일(.java)을 JVM으로 실행하는 과정 이해하기. 학습할 것 JVM이란 무엇인가 컴파일 하는 방법 실행하는 방법 바이트코드란 무엇인가 JIT 컴파일러란 무엇이며 어떻게 동작하는지 JVM 구성 요소 JDK와 JRE의 차이 JVM이란 무엇인가 JVM(Java Virtual Machine) 은 하나의 추상 컴퓨팅 머신이라고 생각할 수 있다. 컴퓨터 CPU안에 Instruction Set 이라고 하는 명령어 집합이 있는데, JVM에도 있다. 그리고 운영체제가 메모리를 관리하듯 JVM도 메모리를 관리한다. JVM이라는 추상 컴퓨팅 머신을 가짐으로써 얻는 이점이 무엇일까? 만약 C언어로 작성한 파일이 윈도우에서 동작하더라도, 리..
-
인터페이스를 사용하는 이유 (feat. Comparable)개발/Java 2020. 12. 18. 22:48
보시는 분들께... 정확한 사실이 아니고 저의 고찰입니다. 갑자기 이것이 궁금해진 이유 우아한테크코스 프리코스를 진행하면서 Comparable 인터페이스를 사용한 적이 있다. 내가 이것을 제대로 알고 필요하다! 해서 사용한게 아니라, 검색을 하다보니 사용한 예제가 나와서 나도 모르게 외워서 사용한 것이다. 코드를 짜고나서 보니 궁금한 점이 생겼다. 내가 아는 인터페이스란.. 구현이 하나도 안되어 있는, 간단하게 말해서 이러한 기능을 사용할거다! 구현해라! 라고 알려주는 추상화같은게 아닌가? 어차피 구현도 안되어있고 구현해도 꼴랑 compareTo()를 오버라이드해서 `return a.value - b.value` 한 줄 작성하는게 전부인데, 그렇다면 비교를 위해서 굳이 Comparable 이라는 인터페이..
-
스트링을 char 배열에 저장해주는 .toCharArray()개발/Java 2020. 5. 14. 20:24
알고리즘 DFS, BFS 문제를 풀다보면 지도와 같은 환경을 스트링으로 주는 경우가 있다. 이런 경우 스트링에 문자 하나하나를 떼어서 배열에 넣어주는 함수가 toCharArray() 이다. 미로탐색 문제에서 1이 이동가능, 0이 이동불가능한 블럭이라고 할때, 띄어쓰기 없이 10111 11110 ..... 이런식으로 주어진다. char형 2차원 배열을 생성하고 (char[][] map) for문 안에서 map[i] = sc.nextLine().toCharArray() 로 각 한줄씩 배열에 저장할 수 있다. char형이 아닌, int 배열에 넣고싶을 때는 또다른 방법이 있다. 이중포문 안에 CharAt() 함수를 쓰는 방법이다. 첫번째 for문으로 스트링을 입력받고 두번째 for문에서 int n = char..