게시글
고민있어요
Spring boot 2.7 영한님 강의 Q클래스 경로와 똑같이 할 수 있는 설정 공유합니다.
- 0
- 1
- 493
고민있어요
강의 코드 자료 요청 관련해 문의드립니다.
- 0
- 1
- 346
질문&답변
에러 발생합니다!
앗, 감사합니다!
- 0
- 2
- 426
고민있어요
5분 58초경 프로젝트 생성 화면이 내 PC 에 보이는 화면과 다를 경우, 해결법
- 0
- 1
- 308
고민있어요
터미널 h2.sh 실행시 permission denied 뜰 때 해결법
- 0
- 1
- 775
고민있어요
강사님, 혹시 자바 관련해서 다른 내용을 추가로 다루실 예정이 있으실까요?
- 0
- 1
- 216
고민있어요
강사님 따로 멘토링은 안하시는지요?
- 1
- 1
- 357
질문&답변
인스턴스에 대해
두번째 답변인스턴스 변수는 인스턴스가 생성될 때 생성된다. 라고 나와있는데 잘 이해가 가지 않습니다.그리고 인스턴스 메소드도 잘 이해가 가지 않습니다..라고 질문해주신 내용도 한 번 답변 달아봅니다.. 이 역시도 틀렸으면 강사님이 도와주실꺼라는 믿음으로 ..히ㅏ하.. 😅 일단 "인스턴스 변수는 인스턴스가 생성될 때 생성된다 ' 라는 말을 설명해보겠습니다! 위에서 설명드린 것처럼, 인스턴스 변수는 코드를 다 작성하고 난 후 실행 버튼을 눌러야, 컴퓨터 메모리에 실제 입력이 되면서 생겨납니다. 그럼 당연히 실행버튼을 누르기전엔 객체 선언 상태에서는 인스턴스가 없으니 인스턴스 변수 (제품명, 화질, 가격, 색상) 이 생성되지 않습니다. 그리고 실행버튼을 누르고 난 후에야 인스턴스가 생성되면서 코드로 작성해놓은 제품명, 화질, 가격, 색상이 생성된다고 보시면 됩니다!인스턴스 메소드가 뭔지 이해가 되지 않습니다, 라는 내용에 답변드립니다!(사진) 위 그림을 보시면 가장 왼쪽에 블랙박스 설계도에는 스펙(제품명, 화질, 가격, 색상) 내용과 블랙박스가 가져야 하는 기능 (촬영하기, 녹화하기) 이 적혀있습니다. 이 설계도대로 b1 이라는 블랙박스를 만들면, b1 이라는 블랙박스가 만들어지겠죠..! 그럼 저는 이 b1 이라는 블랙박스에서 녹화하기, 촬영하기를 할 수 있게됩니다. (사진) 이걸 그대로 컴퓨터로 옮긴다고 해보지요! (위 그림 참고)설계도대로 b1 이라는 제품을 만든다. 그럼 설계도에 정의되어있는 "촬영하기, 녹화하기" 기능이 생산된 b1 이라는 제품안에 내장되어 있다.-> 클래스대로 b1 이라는 제품을 만든다. 그럼 클래스에 정의되어있는 "촬영하기, 녹화하기 " 라는 메서드가 b1 이라는 인스턴스 안에 내장되어 있다.라고 보시면 될 것 같습니다.
- 1
- 4
- 558
질문&답변
인스턴스에 대해
강사님께서 예로 드시는 블랙박스 회사를 기준으로 한번 설명해보겠습니다! (내용이 잘못되었으면 강사님이 바로 잡아 주실꺼라는 믿음으로 하하 😅) 블랙박스를 만드는 과정은 아래와 같습니다.블랙박스 설계도를 만든다.사장이 회사 직원에게 b1 이라는 블랙박스를 만들라고 시킨다. 제품명은 하양이, 화질은 FHD, 가격은 10만원, 색상은 화이트직원이 지시사항을 이해하고, 생산 업무를 시작한다.실제 b1 이라는 제품이 생산되고, 사장이 지시한 내용처럼 b1 이라는 제품을 만들어낸다.그림으로 표현하면 아래와 같습니다!(사진)그럼 이 과정을 그대로 현재 저희가 공부하고 있는 컴퓨터에 대입해보겠습니다!(사진)1. 클래스(설계도) 를 만듭니다.그리고 인텔리제이에서 컴퓨터한테 b1 이라는 객체를 만들어야 한다고 지시해야겠죠! 코드를 작성합니다.여기서부터 질문자 분이 헷갈려하시는 내용인데요! 최대한 아는만큼 꼼꼼히 설명해보겠습니다!BlackBox b1 = new BlackBox();★ 위에 코드가 의미하는 바는 " BlackBox 라는 클래스(설계도) 를 이용해서 b1 이라는 "객체" 를 만들꺼야! " 라는 의미입니다.여기서 핵심은 ' 만들꺼야! ' 입니다. 우리가 코드를 작성하면 실행을 해야 내용이 출력되지요? 마찬가지로 저 상태는 그냥 ' 코드, 단순히 글자 ' 일 뿐입니다. 즉 실체가 아니라 컴퓨터한테 이렇게 지시할꺼야! 라고 써놓은 것에 불과합니다. 그리고 실행 버튼을 누르면 컴퓨터는 ' 오호.. 얘가 이런걸 나한테 시키는구나! ' 라고 하면서 저희가 써놓은 코드를 읽어내면서 지시사항을 분석합니다. 그리고 이 지시사항이 끝나면 메모리에 정보를 입력해놓습니다! 메모리에 입력됐다는건 단순히 우리가 써놓은 코드가 단순 글자상태가 아니라 실제 컴퓨터에 데이터가 입력이 됐다는걸 의미합니다. 즉! 진짜 ' 실제로 존재하는 상태 ' 가 됐다는걸 의미합니다. 자 이제 이렇게 정리해보겠습니다.클래스 - 설계도객체 - 구현할 대상 / 아직까지는 글자(코드) 로만 존재함인스턴스 - 코드를 분석해서 그 내용을 메모리에 직접 생성한 실제 존재하는 상태라고 보시면 됩니다!하지만 자바의 정석도 그렇고, 강사님의 강의에서도 그렇고 실제로는 ' 인스턴스 = 객체 ' 라고 봐도 무방합니다. 라고 설명해주십니다! (저도 초보라 잘 모르지만.. 아무래도 컴퓨터를 연구하시는 분들의 입장에서는 깊이 연구하는 과정에서 저 두개의 용어를 구분해야 서로의 의사소통이 편해지니 나름 엄밀하게 구분하신 것은 아닐지 싶네요 ㅎㅎ./..; 아직 저같은 초보들한테는 그냥 인스턴스 = 객체 라고 봐도 무방할 듯 합니다.)
- 1
- 4
- 558
질문&답변
나도코딩님 랜덤짓는법 어디서 배웠죠??
지나가다 보았지만, 강의 퀄리티만큼 답변도 장난이 아니네요..! 질문한 사람도 아닌데 제가 다 감동 받고 갑니다.. 유튜브 멤버쉽도 했지만 이런 내용을 보니 돈주고 산 보람이 있네요... ㅠ
- 0
- 2
- 369