[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] package nested.test; public class OuterClass3 { public void myMethod(){ class LocalClass{ void hello(){ System.out.println("LocalClass.hello"); } } new LocalClass().hello(); } } hello() 메서드가 내부에서만 사용될 때도 public 으로 선언하는 경우가 많은데, private 이나 default로 선언하는 것이 더 나은 선택일까요? 어떤 기준으로 접근 제어자를 선택하는 게 좋을까요? class OuterClass3와 myMethod가 public이기 때문에 통일해준걸까요? 우선 저는 지역클래스 안에서만 사용하기 때문에 defalut로 선언해서 문제를 풀었습니다만 의문이 생겨 질문남깁니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 매개변수 전달관련 예제 출력할때 오타가 약간있는거 같습니다. System.out.println("person.introduceWithNumber = " + fun2.apply(person, 1)); // fun2로 변경
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 [질문 내용] 언제나 강의를 잘 듣고 있습니다 감사합니다! 다름이 아니라 제가 개념이 좀 흔들려서 이렇게 문의 드려봅니다..! 네트워크를 통해 TCP/IP로 통신을 하는 상황에서 MAC주소가 없어도 IP의 주소만 가지고 통신을 할 수 있는게 ARP를 사용해서 서버의 MAC 주소를 찾아낼 수 있어서라는데 이게 맞는건가요? 확실하게 알고자 질문드려봅니다!
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] java -version에서 21인거 확인했고 환경변수,path 설정도 제대로 된것 확인하였습니다. 인텔리제이에서 tool 설정에서 실행이 인텔리제이로 되어있는것도 확인했습니다 근데 왜 자꾸 test부분에서 오류가 나는지 모르겠습니다. 혹시 build.gradle 파일 안에 junit 부분이 인텔리제이에서 밑줄 쳐진것처럼 이상하게 보이긴 했는데 거기가 문제인걸까요? gradlew 까지는 잘 실행되는데 gradlew build를 입력하면 항상 실패합니다. https://drive.google.com/file/d/1H2-IATqwNphgZoDcjcEQXkbAmcfELT8D/view?usp=sharing hello-spring이 들어있는 zip 입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] PC에서 소리는 나오는데 검은화면으로 나옵니다.
1. 강의 내용과 관련된 질문인가요?예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 강의 수강 중 궁금한 것이 생겨 여쭤보게 되었습니다. 내부 클래스가 바깥 클래스의 인스턴스의 멤버에 접근, 지역 변수는 내부 클래스 특징 + 지역 변수에 접근 이라는 것에 대해 여쭤보고 싶습니다. 강의 자료 중 '바깥 클래스의 인스턴스의 멤버에 접근' 이라는 것이 바깥 클래스에 있는 '바깥 클래스 자기 자신'에 대한 객체나 '다른 클래스 타입으로 선언한 객체'를 사용할 수 있다는 말일까요 ? 그리고 지역변수 접근이라는 말도 여쭤보고 싶은데, 예시 코드 void process()를 보면 메서드 내부에 지금 지역 클래스가 있습니다. 지역 변수 접근이라는 말은 바깥 클래스의 메서드 내부에서 존재한다는 말일까요 ?
import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; public class Main { static int n, m, left=0; static int[][] boxes; static int[][] directions = new int[][]{{-1, 0}, {0, -1}, {1, 0}, {0, 1}}; static Queue<Integer[]> q; public int BFS() { /* 정수 1은 익은 토마토, 정수 0은 익지 않은 토마토, 정수 -1은 토마토가 들어있지 않은 칸 | 모두 익을 때까지의 최소 날짜 nx-1, ny | nx, ny-1 | nx+1, ny | nx, ny+1 */ if (left==0) return 0; int L = 0; while (!q.isEmpty()) { int size = q.size(); for (int i=0; i<size; i++) { Integer[] point = q.poll(); for (int j=0; j<4; j++) { int nx = point[0] + directions[j][0]; int ny = point[1] + directions[j][1]; if (nx>=0 && nx<n && ny>=0 && ny<m && boxes[nx][ny]==0) { left--; boxes[nx][ny] = 1; q.offer(new Integer[]{nx, ny}); } } } L++; } if (left >0) return -1; return L-1; } public static void main(String[] args) { Scanner kb = new Scanner(System.in); m = kb.nextInt(); n = kb.nextInt(); boxes = new int[n][m]; q = new LinkedList<>(); for (int i=0; i<n; i++) { for (int j=0; j<m; j++) { boxes[i][j] = kb.nextInt(); if (boxes[i][j]==1) q.offer(new Integer[]{i, j}); if (boxes[i][j]==0) left++; } } Main main = new Main(); System.out.println(main.BFS()); } } 코드는 위와 같이 짰는데 계속 타임 에러가 발생해서 강의를 들었습니다.. 제가 보기엔 강사님이 짜신 거랑 차이를 모르겠는데 제 코드의 어떤 부분이 문제가 됐을까요? =========================== AI 답변 보고 혹시나 싶어서 강사님이 하신대로 Point class 를 따로 만들어서 진행했더니 해결됐습니다..!!!! 배열로 선언한 것과 차이가 있네요
[질문 내용] final이 붙은 int value를 생성자를 통해 초기화하는 법을 배웠습니다. 그런데, final이 변수 앞에 붙은 경우, 생성자를 통해서 한번만 초기화 될 수 있다고 했는데, 아래 ConstructInit 메서드를 두 번 사용하여 초기화를 두 번 진행한 것을 볼 수 있습니다. 한번만 초기화 할 수 있다고 했는데, 왜 객체를 두개나 생성해서 final int value를 두번 초기화한 것일까요? final int value; public ConstructInit(int value) { this.value = value; } package final1; public class FinalFieldMain { public static void main(String[] args) { //final 필드 - 생성자 초기화 System.out.println("생성자 초기화"); ConstructInit constructInit1 = new ConstructInit(10); ConstructInit constructInit2 = new ConstructInit(20); //한번만 초기화 된다며 System.out.println(constructInit1.value); System.out.println(constructInit2.value); } }
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 인텔리제이 설치하고 설치옵션이 뜨는데 뭘 선택해야되나요?
안녕하세요 강의를 보고 javac에 대해서 궁금한 점이 있어서 질문 드립니다. .class로 컴파일 된 파일을 각각 os에 맞는 자바가 각자의 os에 맞게 바꿔서 실행을 한다고 하셨는데 javac도 java이지 않나요?. 정확한지 모르겠지만 linux에서 컴파일한 .class와 window에서 컴파일한 .class의 값이 다르다면 window에서 컴파일한 .class 파일이 linux에서 실행이 되는 건가요? 모든 os에서 실행이 되려면 .class 파일의 내용은 같아야 될 것 같은데 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 2.람다.pdf 36p MyFunction 은 함수형 인터페이스이며, String apply(String s) => StringFunction 이거죠??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 Future 관련 공부를 하다가 궁금증이 생겨 질문 남겼습니다. ThreadPoolExecutor 객체 안에 FutureTask 객체를 만들고 그 안에 task(Callable 구현 객체)를 보관한다고 알고 있습니다. 그러면 스레드풀에 있는 스레드가 해당 Future 작업을 완료한 후에 main 스레드에서 future.get()으로 값을 반환 받고 난 후에 해당 future 객체는 GC가 알아서 처리해주는건가요?