inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

안녕하세요. 람다에서 외부변수를 사용하는 Closure관련해 궁금해 질문드려요.

미해결

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

안녕하세요. 먼저 질좋은 강의 만들어주시고 제공해주셔서 감사드려요! 강의중 Closure가 자바와 다르게 final이 아닌 var변수를 람다안에서 값을 변경가능한것까지 이해하였습니다. 다른 궁금증이 하나 생겨서요. Closure가 람다를 진입하기전 변수를 포획해서 진행한다고 하셨는데, 이는 동시성 문제로부터 자유롭나요?

  • java
  • kotlin
  • 객체지향
클래식 댓글 1 좋아요 3 조회수 507

[공유] next 13 버전 Link 태그 속 a 링크 오류

미해결

[리뉴얼] React로 NodeBird SNS 만들기

Error: Invalid <Link> with <a> child. Please remove <a> or use <Link legacyBehavior>. Learn more: https://nextjs.org/docs/messages/invalid-new-link-with-extra-anchor next 13 버전 이후로부터는 Link 태그 속에 a 태그 넣지 않아야 정상 작동 합니다. 만약 꼭 Link 속에 a 태그를 넣어야 한다 (예시, 이전 버전 코드를 13으로 변경하는데 class 속성 등이 a 태그에 있다) link 에 legacyBehavior 넣으면 됩니다. <Link href="/" legacyBehavior> <a className="... code"> </a> </Link>

  • react
  • redux
  • node.js
  • express
  • next.js
alvinlog 댓글 1 좋아요 14 조회수 4310

선생님 Props내려줄때

미해결

따라하며 배우는 리액트 A-Z[19버전 반영]

data 프롭의 경우는 이미 id ,title, completed 같은 정보들이 다 들어있는거니까 data프롭만 내려받아서 List.js에서 .id, .title, .completed로 써도 문제가 없는거죠?

  • react
  • redux
  • tdd
  • typescript
  • next.js
바퀴Roach 댓글 1 좋아요 0 조회수 348

[공유] 개인 서버에서 reverse-proxy 적용시 next dev 설정

미해결

[리뉴얼] React로 NodeBird SNS 만들기

제목 내용 그대로 서버에서 reverse-proxy 적용시 next dev 실행에 관한 내용입니다. 아래 링크 참고 하시면 됩니다. ( https://itnext.io/one-domain-multiple-next-js-apps-5e39b0ffa1bf ) package.json이 있는 위치에 next.config.js 파일 만들고 module.exports = { assetPrefix: "/npm", }; +) 추가 사항 : 혹시 개인 서버에서 https 적용 중이시면, hmr에서 "WebSocket is closed before the connection is established" 오류 발생합니다. ( https://github.com/vercel/next.js/issues/31139 ) 에서 해답을 찾기는 했는데... 네트워크 탭 보면 이미 wws:// 로 요청이 가서 왜 해결이 되는지는 모르겠지만, hmr 잘 작동됩니다. module.exports = { assetPrefix: "https://{서버 도메인 주소}/npm", } 참고로 nginx reverse-proxy 설정 입니다 location /npm/ { proxy_pass http://localhost:8084/; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $server_name; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection upgrade; proxy_set_header Accept-Encoding gzip; }

  • react
  • redux
  • node.js
  • express
  • next.js
alvinlog 댓글 1 좋아요 1 조회수 1111

useSWR 사용시 타입 지정

미해결

따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 커뮤니티 정보가져오는 useSWR에서는 다른 곳처럼 타입지정을 따로안했는데 원래는 [slug].tsx 에서 사용한 useSWR처럼 타입지정을 해줘야하나요??

  • react
  • node.js
  • postgresql
  • docker
  • typescript
  • 클론코딩
  • next.js
oridori2705 댓글 1 좋아요 0 조회수 321

cookie 완전히 제거 하는법

미해결

[리뉴얼] React로 NodeBird SNS 만들기

로그아웃을 했을때 브라우저에서 쿠키를 완전히 제거하는 코드를 구현했습니다 그런데 페이지 이동을 하는게 아니면 같은 페이지에선 새로고침을 하면 계속 connect.sid에 쿠키가 남아있는데 완전히 없애는 방법 없는지 여쭤보고 싶습니다

  • react
  • redux
  • node.js
  • express
  • next.js
bs44108 댓글 1 좋아요 0 조회수 2556

백엔드 수업 부분

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

안녕하세요 백엔드 수업 부분은 실습이 불가하다고 하는데, 따로 vscode 사용없이 강의만 수강해도 괜찮은건가요?

  • react
  • node.js
  • seo
  • graphql
  • next.js
wodndi0321 댓글 1 좋아요 0 조회수 396

챗지피티 때문에 결제했는데...

해결됨

ChatGPT 100% 활용하여 배우는 파이썬 기초 A to Z

ChatGPT와 함께 파이썬 시작하기 (변수, 정수) 편 아직 안올라 온건가요?

  • python
  • 알고리즘
sonyyjj 댓글 2 좋아요 0 조회수 1545

스크롤때문에 데이터 불러오는거

미해결

[리뉴얼] React로 NodeBird SNS 만들기

스크롤때문에 무한으로 데이터 요청 보내는거 작업, 게시글 좋아요 강의 편에서 한다고 했는데 돌려봐도 스크롤 데이터 요청막는거 안보여서요 아직 구현 안한건가요?

  • react
  • redux
  • node.js
  • express
  • next.js
오일중 댓글 1 좋아요 0 조회수 283

run dev 오류

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

notion에 있는 '수업 프로젝트 설치할 것' 이후 yarn dev를 해보면 다음과 같이 Can't resolve '@styles.Home.module.css'가 뜹니다. _app.js에 있는 import문도 삭제하였는데, 해당 문제가 해결되지 않아 qqq폴더 안에 index.js도 실행이 되지 않습니다..! 혹시 어떻게 해결 가능할까요? 실행 위치는 codecamp, class, qqq 모두 해보았는데 같은 오류가 발생합니다! ㅠㅠ + import styles from ~~부분을 주석처리하고, return 안의 내용을 삭제시키니 동작하는데 삭제시켜둔 상태로 강의를 진행해도 괜찮나요?

  • react
  • node.js
  • seo
  • graphql
  • next.js
설기 댓글 1 좋아요 1 조회수 445

[파이썬 Print 사용법(1-4) - New 2023] NameError

미해결

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

파이썬 Print 사용법(1-4) - New 2023 강의에서 print로 출력하려고 하는데 자꾸 아래와 같은 오류가 떠요... 입력 값: 출력값: >>> print(f'm : {m:,}') Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'm' is not defined Python Version : 3.11.2 64-bit

  • python
Ilyeop Kang 댓글 1 좋아요 0 조회수 361

apollo-client의 사용 및 _app.js 작동원리

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

example 주소 : http://practice.codebootcamp.co.kr/graphql 이 주소가 이렇게 떠서 포트폴리오용 주소 : http://backendonline.codebootcamp.co.kr/graphql 이주소를 uri에 넣었고 이렇게 실행해봤더니 이렇게 뜨네요 버튼을 눌러도 네트워크에 뜨지 않습니다 뭐가 문제일까요?..

  • react
  • node.js
  • seo
  • graphql
  • next.js
웹서퍼 댓글 1 좋아요 0 조회수 451

Scanner, FileReader, BufferedReader 등 각각의 차이점 및 섹션 14. 퀴즈 #13의 호출 순서와 관련된 질문입니다...ㅎ

해결됨

나도코딩의 자바 기본편 - 풀코스 (20시간)

안녕하세요, 나도코딩 선생님...ㅎ 동영상 강의들 중 섹션 14. 입출력과 파일을 보다가 궁금증이 생겨서 질문을 하게 되었습니다...ㅎ (1) 섹션 14. 입출력과 파일을 공부하면서, 파일을 읽는 여러 가지 방법들을 접하고 있습니다. 공부하면서 BufferedReader, FileReader, Scanner등 여러 가지 방법들이 있는데, 이들은 어느 때 쓰이는 것이 가장 좋은가요? 예를 들면, BufferedReader는 큰 용량의 파일을 읽는데 적합하다 던가, 아니면 Scanner는 키보드 입력을 받는 것 외에도 파일을 읽고자 할 때, FileReader와 같은 역할을 한다 이런거요! 만약 어느 한 텍스트 파일을 읽고자 할 때, Scanner를 예로 들면, 이렇게 코드를 적어볼 수 있을까요? 모든 건 이미 import가 있다고 가정하고 작성해봤습니다...ㅎ: ... // 이전 코드 생략 try { File file = new File("testing.txt"); Scanner scanner = new Scanner(file); while(scanner.hasNext()) { System.out.println(scanner.next()); // 여기서 만약에 여러 줄들로 이루어진 텍스트에서 한 글자씩 따오려면, // 이전에 문자열 관련 질문 처럼 scanner.next().charAt을 쓰나요? } scanner.close(); } catch (FileNotFoundException e1) { e1.printStackTrace(); // 예외 처리 1 } catch (IOException e2) { e2.printStackTrace(); // 예외 처리 2 } (2) 섹션 14에 있는 퀴즈 #13과 관련된 질문입니다! 제가 try문 안의 String input; scanner의 호출 스택(순서)을/를 제대로 이해했는지 알고 싶습니다...ㅎ ... // 이전 코드 생략 Scanner scanner = new Scanner(System.in); try (BufferedReader br = new BufferedReader(new FileReader("saying.txt"))) { ... // 퀴즈 시작 및 제목 출력 String quiz; String answer; String input; while (true) { quiz = br.readLine(); answer = br.readLine(); if (quiz == null || answer == null) { break; } System.out.println(" (문제) " + quiz); System.out.println(" (답 입력) "); input = scanner.next(); ... // input.equal(answer), if-else문 생략 } ... } catch (IOException e) { e.printStackTrace(); // 예외 처리 } 여기 이 코드에서, quiz랑 answer는 1줄 1줄 br.readLine();을 통해 단어 및 문장들을 인식하는 반면, 입력하는 답안의 경우에는 우선 try문 안에서 String input;을 선언하고, 대입 연산자 = 를 통해 .next();로 입력을 받은 다음, string으로 선언된 input을 .equal();로 입력받은 값과 정답을 비교하여 최종 결과를 출력하는 건가요? 프로그래밍 언어를 공부하다보니 여러 질문들과 궁금증이 많이 쌓이는데, (특히 최근에 들어선 더 많아졌네요...ㅎ) 그 때마다 제 궁금증을 답글을 통해 잘 해소줘서 진심으로 감사합니다..ㅎ :)

  • java
  • 객체지향
  • 파일
  • file
  • 입출력
  • input
  • output
댓글 1 좋아요 1 조회수 958

redux saga를 사용한 비동기 통신 질문

미해결

[리뉴얼] React로 NodeBird SNS 만들기

안녕하세요 강사님, 비동기 통신 관련해서 질문이 있습니다. 상세페이지를 만들면서 map 돌린 것 중 어떤 아이템을 클릭하면 아이템의 이름을 url 주소에 넣고, 그걸 매개변수로 데이터를 가져오려고 합니다. 그래서 api를 result를 매개변수로 아래와 같이 만들고 saga도 만들었습니다. getWordArt: (result) => localApi.get("/api/markets/search?text=" + result), function* loadSearchArt(action) { try { const result = yield call(ArtApi.getWordArt()); yield put({ type: SEARCHART_SUCCESS, data: result.data , }); } catch (err) { yield put({ type: SEARCHART_FAILURE, error: err.response.data , }); } } function* watchLoadSearchArt() { yield takeLatest(SEARCHART_REQUEST, loadSearchArt); } export default function* ArtSaga() { yield all([ fork(watchLoadSearchArt), ]); } 그리고 useParams로 result를 가져와서 아래처럼 getWordArt에 매개변수로 넣었습니다. const { result } = useParams(); useEffect(() => { ArtApi.getWordArt(result) .then((res) => { setSearchArt( res.data.data.markets ); }) .catch((err) => { throw new Error(err); }); }, [result]); 데이터는 잘 가져오는데 이 코드를 dispatch를 사용해서 아래처럼 수정하고 싶은데 어떻게 하면 좋을지 잘 모르겠어서 질문합니다. useEffect(() => { dispatch({ type: SEARCHART_REQUEST, }); }, [dispatch]); 저런 코드에 result를 여기저기 넣어봤는데 데이터를 못 가져옵니다ㅜㅜ 아래에 reducer도 같이 첨부합니다. const initialState = { searchArt: [], searchArtLoading: false, searchArtDone: false, searchArtError: null } export const SALEART_REQUEST = "SALEART_REQUEST"; export const SALEART_SUCCESS = "SALEART_SUCCESS"; export const SALEART_FAILURE = "SALEART_FAILURE"; const ArtReducer = (state = initialState, action) => { return produce(state, (draft) => { switch (action.type) { case SEARCHART_REQUEST: draft.searchArtLoading = true; draft.searchArtDone = false; draft.searchArtError = null; break; case SEARCHART_SUCCESS: draft.searchArtLoading = false; draft.searchArtDone = true; draft.searchArt = action.data.data ; break; case SEARCHART_FAILURE: draft.searchArtLoading = false; draft.searchArtDone = true; draft.searchArtError = action.data .error; break; default: return; } }); };

  • react
  • redux
  • node.js
  • express
  • next.js
김지현 댓글 1 좋아요 0 조회수 480

callback

미해결

따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 1. 여기서 쓰인 callback 함수의 의미는 어떻게 될까요?? 간단하게 return으로 이해하면 될까요?? next()가 없어도 다음 핸들러로 넘어가는 건가요?? callback에서 첫번째 인자는 에러를 뜻하고, 두번째 인자는 위에 사진처럼 하나는 filename이고 하나는 acceptFile: boolean 을 뜻하는데 그저 multer의 형식이라고 생각하면 될까요?? 그리고 upload =multer 저 부분이 실행되고 다음 핸들러인 uploadSubImage에서는 이미 파일이 업로드가 된 상태라고 했는데 그럼 upload= multer가 uploadSubImage로 request로 file정보를 보낸건가요?? 로그를 찍어보니까 req는 ownSub에서는 undefined였는데 uploadSubImage에서 생기더라구요...

  • react
  • node.js
  • postgresql
  • docker
  • typescript
  • 클론코딩
  • next.js
oridori2705 댓글 1 좋아요 0 조회수 466

생성자 안에 메소드...?!

해결됨

나도코딩의 자바 기본편 - 풀코스 (20시간)

안녕하세요, 선생님...ㅎ 갑작스럽게 생각난 질문인데요...ㅎ 제가 예시로 아래처럼 클래스를 만들어 봤는데, 혹시 상속받은 클래스의 super(); 생성자 안에 이렇게 메소드도 넣을 수 있나요? 자바를 공부하면서 지금 여러 소스 코드들을 보고 있는데, 어느 소스코드는 super(); 생성자 안에 메소드를 집어 넣은 경우가 있더라구요?! 만약에 이렇게 만들 수 있다면, 언제 어느 때 가능할까요? 클래스는 정말 제가 생각나는대로 적어서 컴파일 에러 같은 건 생각하지 않았습니다. 부디 너그럽게 봐주셨음 합니다...ㅎ class Kid extends SomethingAwesome { Kid(int age) { super(comment(age)); // super() 생성자 안에 comment메소드 삽입 } public String comment(int age) { String saySometing = ""; if (age > 3 && age < 7) { saySomething += "엄마, 과자 사줘!"; } else if (age >= 7 && age < 11) { saySomething += "엄마, 이젠 로보트 사줘!"; } return saySomething; } public static void main(String[] args) {...} // 메인 메소드 실행 } 또한 일반적인 생성자 (Constructor)를 만들 때도, 생성자 안에 전달 값외에도 메소드를 넣을 수 있는가요? 이것도 마찬가지로 위에 예시로 코드를 적은 것 처럼 제 나름대로...ㅎ 써봤습니다...ㅎ 위의 예시 처럼 정말로 생성자 안에 메소드를 넣는게 가능한지 궁금해서 약간 무리수를 두면서(?) 코드를 적어봤습니다..ㅎ 이것도 너그럽게 봐주세요...ㅎ 감사합니다 : ) class ThankYouNote { // 제가 생각해도 좀 많이 이상하지만, // 메소드를 이렇게 선언해서 do = thanks(); // this.do = do; 이렇게는 많이 무리수죠? ㅠㅠ // 저렇게 위 클래스 처럼 super 생성자 안에 메소드를 넣는건 처음봐요 ㅠㅠ ThankYouNote() { thanks(); // this(thanks()); // 너무 많이 무리수 인듯하지만 일단 적어봤습니다...ㅠㅜ } public void thanks() { System.out.println("나도코딩 선생님, 감사합니다. :)"); } public static void main(String[] args){ ... } // 메인 메소드 실행 }

  • java
  • 객체지향
  • 생성자
  • 상속
  • super
  • this
  • 메소드
  • method
댓글 2 좋아요 0 조회수 1166

PhantomReference 가 소멸되는 시점을 보는 코드 부분이 약간 이상한것 같습니다.

미해결

이펙티브 자바 완벽 공략 1부

public class PhantomReferenceExample { public static void main(String[] args) throws InterruptedException { BigObject strong = new BigObject(); ReferenceQueue<BigObject> rq = new ReferenceQueue<>(); BigObjectReference<BigObject> phantom = new BigObjectReference<>(strong, rq); strong = null; System.gc(); Thread.sleep(3000L); // TODO 팬텀은 유령이니까.. // 죽었지만.. 사라지진 않고 큐에 들어갑니다. System.out.println(phantom.isEnqueued()); Reference<? extends BigObject> reference = rq.poll(); BigObjectReference bigObjectCleaner = (BigObjectReference) reference; bigObjectCleaner.cleanUp(); reference.clear(); } } 위에 코드에서 커스텀하게 만든 BigObjectReference 로 형변환을 하고 cleanUp을 따로 호출 하는 부분이 이해가 잘 가지 않습니다. cleanUp 메서드도 단순히 출력만하는데 굳이나 상속을 받아서 커스텀하게 만든 형태가 만든게 무의미한 것 같습니다. 기선님이 의도한 소멸되는 시점을 확인하고자 하면 아마 아래와 같이 clear 메서드를 오버라이딩하는게 좀 더 맞지 않나 조심 스럽게 의견을 내봅니다. public class BigObjectReference<BigObject> extends PhantomReference<BigObject> { public BigObjectReference(BigObject referent, ReferenceQueue<? super BigObject> q) { super(referent, q); } @Override public void clear() { super.clear(); System.out.println("clean up"); } } public class PhantomReferenceExample { public static void main(String[] args) throws InterruptedException { BigObject strong = new BigObject(); ReferenceQueue<BigObject> rq = new ReferenceQueue<>(); BigObjectReference<BigObject> phantom = new BigObjectReference<>(strong, rq); strong = null; System.gc(); Thread.sleep(3000L); // TODO 팬텀은 유령이니까.. // 죽었지만.. 사라지진 않고 큐에 들어갑니다. System.out.println(phantom.isEnqueued()); Reference<? extends BigObject> reference = rq.poll(); reference.clear(); } } 출력화면

  • java
정권호 댓글 2 좋아요 1 조회수 582

handleSubmit을 useCallback으로

해결됨

따라하며 배우는 리액트 A-Z[19버전 반영]

handleSubmit를 useCallback으로 감싸서 만들어봤는데 const handleSubmit = useCallback( (e) => { e.preventDefault(); let newTodoData = todoData.map((data) => { if (data.id === id) { data.title = editedTitle; } return data; }); console.log(newTodoData); setTodoData(newTodoData); setIsEditing(false); }, [todoData, setTodoData, id, editedTitle] ); 의존성배열에 setTodoData 를 넣지않으면 아래오류가 나면서 handleSubmit 함수가 실행되지 않더라구요 React Hook useCallback has a missing dependency: 'setTodoData'. Either include it or remove the dependency array. If 'setTodoData' changes too often, find the parent component that defines it and wrap that definition in useCallback 제 지식으론 의존성배열에 todoData만 넣으면 될줄 알았는데 왜 setTodoData 까지 같이 넣어야하는지 궁금합니다!

  • react
  • redux
  • tdd
  • typescript
  • next.js
뽀개즈아 댓글 1 좋아요 0 조회수 470

axios.js 에 인스턴스를 만든 후 Banner.js 에 import 할 때 문의

미해결

따라하며 배우는 리액트 A-Z[19버전 반영]

안녕하세요! axios.js 에 인스턴스를 만들고 그 인스턴스를 export default instance; 로 export 해줬는데 그렇다면 Banner.js 에서 가져와서 사용할 때 import instance from "../api/axios"; 라고 가져와서 instance.get(requests.fetchNowPlaying); 이런 식으로 사용하는게 맞지 않나 생각이 들어서 질문 드립니다.

  • react
  • redux
  • tdd
  • typescript
  • next.js
Donald 댓글 1 좋아요 1 조회수 594

자바의 메소드 (Method), return, 전달 값(Parameter)가 갑자기 헷갈립니다...ㅎ

해결됨

나도코딩의 자바 기본편 - 풀코스 (20시간)

안녕하세요, 다름이 아니라 제가 메소드 (Method), 전달 값 (Parameter), return 개념을 공부하는 도중, 갑작스레 개념이 헷갈려서 이렇게 글을 남깁니다. 나도코딩 자바편에 나온 동영상 강의와 함께, 커뮤니티에도 등록된 글을 보면서 다시 한 번 복습을 하고 있는데요...ㅎ String getAddress(){ return "서울시 어딘가"; } 이제 전달 값, 그러니까 Parameter가 없는 메소드인 경우, 그냥 위와 같이 return으로 문장을 출력하는 반면에, 갑작스레 parameter와 return이 함께 있는 메소드가 헷갈리더라구요...ㅎ (반환 타입) 메소드 이름 (전달값1, 전달값2, ...) { 반환 값 선언 // 예시 : int result = 0 // 메소드가 수행하는 여러 명령문들 수행 동작 1; // 괄호 안의 전달 값들을 사용 및 동작 수행 수행 동작 2; // 전달 값1, 2들을 이용하여 수행 2 수행 동작 3; // 전달 값1, 2들을 이용하여 수행 3 ... return 반환 값; // return result - 결과 값 반환 } int add (int x, int y) { int result = x + y; // 이미 int result = 0;을 내포함 return result; } 제가 위의 메소드들에서 이해 한 부분은 (혹시 몰라서 다른 예시도 들고 왔습니다..ㅎ), void를 제외한 나머지 자료형 타입 (String, int 등...)들은 return을 가지고, 이 때 return을 하는 것은 반환 값이 되는데, 여기서 return 반환 값은 이미 이전에 괄호 안의 전달 값들을 이용하여, 수행 동작들을 마친 다음 반환 값을 저장하는 과정으로 이해하는 게 맞을까요? 이렇게 메소드가 수행 된 다음엔, main 메소드에서 참조변수를 통해 수행되는 과정으로 최종 결과를 출력하는 거구요...ㅎ 이렇게 이해하는게 올바르게 이해 한 것일까요? (반환 타입) variable = 메소드 이름(); System.out.println(variable); System.out.println();을 쓰는게 일반적이진 않지만, (다른 메소드를 불러서 처리하거나, 아니면 메소드 안에 이미 print문이 저장되어 있을 수도 있기 때문에) 제 스스로 이해를 돕기 위해서 일련의 과정을 위에 나온 것처럼 제 나름대로 정리해봤습니다. 또한 프로그래밍 공부를 계속하면서, 객체 지향 프로그래밍언어(OOP)의 기초 부분에서 가끔 헷갈릴 때가 있는데 (평상시에는 잘 씀에도 불구하고,) 그 때 마다 좋은 답글을 남겨주셔서 감사합니다. 덕분에 어려운 Java 프로그래밍 공부 잘 헤쳐 나가고 있습니다 :) 다시 한 번 감사합니다 :)

  • java
  • 객체지향
  • method
  • 메소드
  • return
  • 반환값
  • 전달값
  • parameter
댓글 2 좋아요 0 조회수 2176

인기 태그

인프런 TOP Writers

주간 인기글