20%
57,200원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
추상 클래스 / 익명 클래스
강사님, 안녕하세요. 우선 많은 강의 내용 중 생기는 질문에 대해서 항상 친절하게 답변해주시는 점 감사드립니다. 😊다름이 아니고 익명 클래스 (후반전) 에서 추상 클래스를 직접 상속받아서 객체 생성과 동시에 메서드를 오버라이드 하는 것과 객체 메서드로 반환받아 하는 것이 어떠한 기능적인 차이가 있는 것인지 궁금하여 여쭤봅니다!개인적으로는 별도의 메서드로 객체를 반환 받는 형태가 직관적으로 와닿지 않아서 어렵게 느껴지는 듯 합니다.단순히 코드의 유지보수나 가독성을 높이는 목적 때문에 추상 클래스의 메서드를 직접 상속받는 형태보다 익명클래스를 활용해 메서드로 객체를 반환받는 형식으로 하는걸까요?
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
run configuration 설정
쌤 안녕하세요 인텔리제이 실행할 때 run이 활성화 되어있지 않아서 해당 클래스로 설정을 해둬 실행이 되었는데 새로운 클래스 마다 설정을 해줘야하더라고요 혹시 자동으로 생성되는 클래스마다 설정되게 하는 방법 알 수 있을까요..? 구글링으로 찾아보는데 다 파일 하나하나씩 설정하는 것만 나오네요
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
도와주세요!
여기서 가로에 +1값을 안하고 싶은데 어떻게 해야할까요....
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
퀴즈 11 질문입니다 관련
Throw 로 생성을 해주니 클래스 부분에 스태틱을 포함하든가 메인 영역에 스태틱을 지우라고 오류가 뜹니다.선생님 코드에는 이상이 없는 것 같은데 궁금합니다!이렇게 클래스에 스태틱을 추가하면 오류가 사라집니다.
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
wrapper 클래스
제네릭 클래스에서는 wrapper가 이러한 형식으로 쓰이는 가보다라고 문법처럼 이해를 했습니다. 근데 본질적으로 wrapper 클래스 강의를 보다 보니까 왜 원시자료형을 쓸 때는 intvValue(), doubleValue() 등등이 안되는지 이해가 안됩니다. 대충 알아보니 박싱 언박싱 개념이 나오는데... 그냥 메소드를 사용하려면 참조형이 되야 한다라고 생각하고, wrapper를 쓰면 원시-> 참조로 바뀐다고 생각하면 되나요? 그리고 parseInt()와 intValue()의 차이도 알고싶습니다. 혹시 이것도 parseInt()는 원시자료형이 필요하고 intValue()는 참조형이 필요하다고 생각하면 되나요?
- 해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
String 문자열, String[] 배열에서의 .length, .length(), .charAt() 쓰임의 차이점을 알고 싶습니다 :)
안녕하세요, 다름이 아니라 제가 나도코딩 자바(Java) 기본편을 공부하면서, 배열(Array)에 관해 모르는 것이 생겨서 이렇게 질문을 남깁니다.일반적으로 배열이 String[] array = {...}; 이렇게 선언 되었을 때, array.length를 이용해서 배열의 길이를 파악하고, array[0] 처럼 이렇게 인덱스로 값의 위치를 파악하면서 데이터를 읽는다고 알고 있습니다. 반면에 String sentence = "sentence"; 이런 경우에는 같은 length를 쓰지만 String 클래스의 메소드라서 괄호를 나타낸 sentence.length()로 길이를 파악하고, "..."; 안 문장의 각 글자 별 위치를 파악할 때는 sentence.charAt()을 쓴다고 알고 있습니다. 제가 이해한 부분이 혹시 맞을까요?또한 아래처럼 선언된 String[] 배열에서:String[] Java = { "나는 자바가 좋아요" };Java 배열의 전체 길이를 파악하고 싶다면, Java.length 으로 적는데, 만약 배열 안 문장 "나는 자바가 좋아요" 의 전체 길이를 알고 싶다면 Java[].length()으로 적고, 배열 안에 들어있는 문장 "나는 자바가 좋아요" 에서 각 낱말의 위치를 파악하고 싶다면, Java[].charAt()를 적으면 되는 건가요? 여기서 Java[].부분에는 배열 index를 적고 (예를 들면 Java[0]), charAt()은 "..." 문장의 각 글자 별 인덱스를 적는 방식으로요.질문이 조금 많이 길었습니다. 하지만 동시에 그 만큼 제가 또한 열심히 배우고 싶다는 열정으로 봐주셨으면 합니다! 게다가 앞으로 다가올 기말시험에서도 배열의 비중이 꽤 크기도 해서, 정말로 잘 배우고 싶습니다! (해외에서 대학을 다니는 지라 지금 이맘때 쯤이 시험기간입니다 ㅠㅠ)참 얼마 전에, 자바로 소켓 프로그래밍으로 과제를 해야 했었던 일이 있었는데, 그 때 나도코딩님이 업로드 해주신 섹션 12. (Section 12.) 예외 처리 부분이 상당히 많이 도움 되었습니다.덕분에 과제에서 나쁘지 않은 점수를 받았습니다. 앞으로도 좋은 강의 잘 부탁하고, 진심으로 감사합니다 :-)
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
강사님, 질문 하나 드립니다!
구문 1구문 2 (강사님이 보여주신 예제)단순 위 아래의 순서 차이 같아 보이는데, 구문 1 에서는 오류가 나고, 구문 2에서는 오류가 나지 않는 이유를 혹시 알 수 있을까요? 왠지 인스턴스 변수 때문에 그런건가 대충 짐작만 하고 있는데.. 혹시 설명을 들을 수 있을지요 하하;
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
제네릭 클래스 (전반전) 마지막 부분 int와 String으로 변환
안녕하세요.강의 정말 잘 듣고 있습니다.제네릭 클래스 (전반전) 마지막 부분int 와 String으로 변환 후 출력을 하는 부분에서Object c3Name = c3.name; System.out.println("주문 고객 번호 : " + c3Name); Object c4Name = c4.name; System.out.println("주문 고객 이름 : " + c4Name);이대로 작성하면 오류없이 정상 출력 됩니다.int와 String으로 변환하지 않고 Object로 코드 작성하면 안되는 건가요?왜 굳이 int와 String으로 변환해서 출력하는지 궁금합니다.
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
제네릭스
혹시 인텔리제이에서 왜 저는 일렬로 출력되는지 알 수 있을까요? 밑에 현재 작성한 코드입니다! public class _01_Generics { public static void main(String[] args) { // 제네릭스 int[] iArray = {1, 2, 3, 4, 5}; double[] dArray = {1.0, 2.0, 3.0, 4.0, 5.0}; String[] sArray = {"A", "B", "C", "D", "E"}; printIntArray(iArray); printDoubleArray(dArray); printStringArray(sArray); } private static void printStringArray(String[] sArray) { for (String i : sArray ) { System.out.println(i + " "); } System.out.println(); } private static void printDoubleArray(double[] dArray) { for (double i : dArray ) { System.out.println(i + " "); } System.out.println(); } private static void printIntArray(int[] iArray) { for (int i : iArray ) { System.out.println(i + " "); } System.out.println(); } }
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
Escape Sequence에서 Tap 결과값에 대해 질문드려요
강의 영상에서는 \t 한번으로 숫자가 정렬된 것을 볼 수 있었습니다. 하지만 제가 작성하였을때는 정렬이 되지 않습니다.물론 \t을 2번 진행하게 되면 정상적으로 정렬이 되는 것을 볼 수 있습니다.강사님 처럼 \t 한번으로 정렬하기 위해서는 어떻게 해야하나요?
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
참조 강의 중 질문
changeName(c2); System.out.println(c1.name); System.out.println(c2.name); public static void changeName(Camera camera) { camera.name = "잘못된 카메라";안녕하세요 참조 강의 중 앞부분은 다 이해가 갔는데 위 코드가 등장하는 순간부터 이해가 잘 가지 않아서 질문을 드립니다.1. 우선 아랫 부분 코드가 이해가 잘 가지 않습니다. changeName 이라는 메소드의 매개변수에 (Camera camera)가 들어간 것에 대한 의미를 잘 모르겠습니다.changeName(c2)를 통해서, c2가 참조하는 첫번째 Camera()의 이름을 바꿨는데,Camera camera는 무슨 의미로 작성하신 건지 잘 이해가 가지 않습니다..2.camera.name도 잘 이해가 가지 않습니다. 코드에서 camera라는 객체나 메소드가 보이지 않는데 왜 camera.name의 의미는 camera의 이름을 바꾸는 것인데, 제가 볼 땐 camera라는 메소드 또는 객체가 보이지 않는데 왜 강사님께서 이렇게 작성을 하신건지 잘 모르겠습니다..ㅠchangeName(c2); System.out.println(c1.name); System.out.println(c2.name);이렇게 봤을 때는 이해가 잘 가는데요.. ㅠㅠ
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
콘솔에서 한글 꺠짐문제는 어떻게 해아하나요?
인텔리제이 콘솔창 한글 깨지는 문제 어떻게 해결하셨나요? 구글에 나온대로 설정 들어가서 UTF-8로 다 바꾸는것도 해보고 vm들어가서 추가하는것도 해봤는데 해도 안되네요 구지 한글로 안해도 되긴하는데 먼가 그냥 뒤에서 콘솔창에 한글로 계속 쓰실것 같아서 해결어떻게 하셨나 궁금합니다!-Dfile.encoding=UTF-8 -Dconsole.encoding=UTF-8
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
intelliJ 실행속도
안녕하세요. 현재 강사님 강의 내용을 intellij에 직접 쳐보고 결과를 출력하고 있습니다.그러나 한 번 실행할 때마다, 콘솔 화면에 출력되는 속도가 현저히 느립니다.여러가지 원인이 있을 것 같지만 노트북 용량에 영향 받는 걸까요?
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
Integer.parseInt,와 Integer.valueof 의 차이가 궁금합니다.
int i = Integer.parseInt("93"); System.out.println(i); int i = Integer.valueOf("93"); System.out.println(i); 두 개다 93으로 출력이 되는데 둘 다 맞는 문법인가요? 문자를 정수로 바꿔준다는 기능은 똑같은거 같은데.. 차이가 뭔지 잘 모르겠습니다..
- 해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
접근제어자에 대하여..
public class BlackBoxRefurbish { String modelName; String resolution; private int price; String color; public String getModelName() { return modelName; } public void setModelName(String modelName) { this.modelName = modelName; } } 1.접근 제어자는 변수, 메서드, 성생자에 대한 접근 권한을 지정할 수 있고, getter와 setter는 메소드이기 때문에public String getModelName() {} 처럼"public을 통해 메소드인 게터와 스케터를 접근을 제어할 수 있다" 고 알고있으면 되는 걸까요?2. 접근제어자(후반전) 강의 중 6분에서 alt + enter를 누르면 import class를 하셨는데 이거는 어떤 기능인가요? 맨 위에 import chap_07.A; 라고 뜨는데 뒤에서 배우는 부분인가요?3.동일 강의 5분 38초 쯤에서 class A를 입력한 직후 기존 BlackBoxRefurbish 파일이 끝에 .java가 붙었습니다. 파일에 변화가 생긴건가요? 아니면 원래 클래스와 .java는 같은 건가요?그리고 이후 자바 파일 내에서는 클래스를 여러 개 만들 수 있다고 하셨는데, 일반적인 클래스 파일 내에서는 여러 개의 클래스를 만들 수 없나요? 설명이 빈약하지만..(새로운 강의를 시작할 때 마다) 패키지에 만드는 새로운 클래스 내부에 또다른 새로운 class를 적용할 수 없는 건지 궁금합니다..감사합니다 ^^
- 해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
생성자에 대하여..
안녕하세요 생성자를 공부 하던 중 궁금한게 생겨서 질문 드립니다!! ^^ 생성자를 정의하는 방법이 헷갈려서 질문 드립니다!1.클래스와 같은 이름을 가진 메소드를 만드는 것이 생성자를 만드는 방법이라고 할 수 있는건가요? (2.그리고 class Calculator는 Calculator라는 클래스를 만드는 것이고, public Calculator는 메소드 오버로딩처럼 이미 만들어진 Calculator 클래스를 수정하는건가요?)package chap_07; class Calculator { int left, right; public Calculator(int left, int right) { this.left = left; this.right = right; } public void sum() { System.out.println(this.left + this.right); } }3.위 코드에서 class Calculator 로 클래스를 만들고 이후 public Calculator 로 클래스와 같은 이름인 메소드를 만듬으로써, calculator 클래스를 열면 바로 int left,right를 입력하도록 하는 생성자를 만든 것인가요?public class CalculatorDemo1 { public static void main(String[] args) { Calculator c1 = new Calculator(); // 에러 발생 c1.sum();4.그리고 Calculator() 괄호 안에 아무것도 입력하지 않으면 오류가 생기는 것을 미루어 보아새로운 인스턴스를 만들 때 생성자가 작동하는 것이 맞나요?감사합니다.
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
HashMap 내 \t 출력에 문제가 있습니다.
안녕하세요, 해시맵 부분 수강하던 중 강사님과 다르게 출력되는 부분이 있어 문의드립니다.아래 코드를 출력한 결과 제 화면에서는 \t 만큼 띄워지지 않고, key와 포인트 부분이 한 칸(스페이스바 하나)만 띄워서 출력됩니다. 강사님이 올려주신 파일로 실행을 해도 문제가 해결되지 않습니다. 일반 sout 문에서는 문제없이 \t를 사용할 수 있는데, 아래 코드에서만 제대로 출력되지 않는 것 같습니다. 읽어주셔서 감사합니다. // Key & Value 함께 확인 for (String key : map.keySet()) { System.out.println("고객 이름 : " + key + "\t포인트 : " + map.get(key)); } System.out.println("------------------------");
- 미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
강사님, 질문사항 있습니다!
LinkedList 와 ArrayList 는 기능이나 선언, 입력, 삭제하는 문법이 대부분 같은데요. 분명 각각의 용도나 목적이 있으니 이 둘이 구분된 것으로 생각하고 있습니다. 혹시 각각 어떤 목적으로 어떤 용도로 사용하는지 구분을 알 수 있을까요? (실무에서는 이럴 때 뭐를 사용하고, 어떤 경우엔 뭐를 사용한다, 이런 내용도 좋을 것 같습니다!)
- 해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
인스턴스에 대해
안녕하세요~ 공부를 하다가 막히는 부분이 생겨 질문 드립니다. 인스턴스와 인스턴스 변수는 서로 다른건가요? 검색해보니 인스턴스 변수는 인스턴스가 생성될 때 생성된다. 라고 나와있는데 잘 이해가 가지 않습니다. 그리고 인스턴스 메소드도 잘 이해가 가지 않습니다.. BlackBox b1 = new BlackBox(); 에서 b1이 새로운 객체(인스턴스)인 것 까지는 알겠는데 단어가 비슷하다보니 잘 이해가 가지 않네요..!!
- 해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
강사님 질문 있습니다!
항상 이 부분에서 이해가 안되서 답답한 마음을 안고 지내고 있습니다 🥲구문 1.Reportable factoryCam = FactoryCam();구문 2.FactoryCam factoryCam = FactoryCam(); 구문 1과 구문 2의 차이점이 무엇인지 알 수 있을까요? 기능적인 부분은 이해했습니다. 구문 1의 경우, FactoryCam 이 Reportable 인터페이스를 상속받았으니, Reportable 로 참조를 해서 접근할 수 있다.. 라고는 이해를 했는데요.저 두 개가 달라지는 것에 대한 개념을 좀 설명 부탁드려도 괜찮을까요?제가 어렴풋이 이해하는 개념은 접근 경로 같은 개념인데, 이게 맞을까요?