분류 전체보기 409

4주차) 클래스 자유생성 - 발표

자바 수업시간에 선생님께서 각자의 자유 과제 발표를 준비하라며 수업때마다 1~2시간 정도의 자유시간을 주셨습니다. 그렇게 한주가 흘렀고, 이번주에 학생 25명이 3시간에 걸쳐 한명씩 나와 모두 발표를 마쳤습니다. 저는 지난주에 만들던 playerMonster 라는 가제로 게임을 만들어 보았는데요. Object oriented programming 개념을 들어간 직후에 설계한 클래스들이다 보니, 과제를 발표할때쯤이나 되어서 배운 상속이나 인터페이스 등의 개념을 적용시키지 못해 정말 아쉬웠습니다. 사실 발표를 할거란 말씀을 하시기 전에 영어버전으로 만들어보던 게임이었는데, 발표를 하게된단 말에 부랴부랴 한글로 버전으로 방향을 틀었다가, 기존에 만들어 놓았던 영어버전이 아까운 마음에 언어파일을 따로 클래스로 ..

Development/DevLife 2020.12.12

클래스 자유생성 과제

자바교육 3주차에 객체지향 수업을 듣고 있습니다. 이번 숙제는 배운것을 이용해 자유롭게 클래스를 만들어 보라고 하셨습니다. 별 고민없이, 단지 '재밌을거' 같다는 이유로 노트에 슥슥 써봤습니다. 선생님께서 학생들 테이블을 순회하시다가 제 노트를 슥 보시고는 한마디 하십니다. [ "오늘 안에 하겠어요?" ] 쉽지 않은 주제란걸 말씀하셨단건 눈치챘지만, 괜히 오기가 더 생겨서 [ 내일 수업시간 까지 뭐가 됐든 기본적인 틀은 만들어 놓겠다 ] 란 다짐을 합니다. 쉬는시간, 점심시간 내내 이클립스를 켜고는 생각해봤던 객체들을 구현해 보려고 하는데. 생각했던것보다 복잡합니다. 일단 hp, exp로 끝날게 아니라 max 값이 지정이 되어야 했습니다. 그렇지 않으면 전투 후 체력이 떨어지고는, 본래의 체력을 나중에 ..

Programming/Java 2020.12.06

3자리 마다 콤마(,) 넣는 프로그램

국비지원 자바수업을 시작한지 어느덧 2주가 지났습니다. 매일 오전 4시간동안 자바 수업을 듣고, 수업이 끝날때면 과제를 주시는데 생각을 꽤 해야하는 재밌는 문제를 주로 주셔서 항상 즐겁게 하고 있습니다. 마침 이번에는 간만에 비교적 간단한 과제를 주셔서, 해결책을 여러개 만들어 보았습니다. 일단 내가 손으로 ' , ' 를 붙인다면 어떤 절차로 할까 하고 잠시 생각해 보았습니다. 저는 뒤에서 부터 숫자를 세자리씩 세면서 콤마를 붙이기 때문에 일단 생각대로 구현해보기로 했습니다. 또한, 금요일 수업에서 배운게 String 클래스기 때문에, 새로배운 charAt()을 통해 각 자리 숫자를 읽어오기로 했습니다. 뒤에서 부터 숫자를 셌으니, 당연하게도 숫자가 뒤에서부터 출력이 되었습니다. 세자리 마다 쉼표를 찍지..

Programming/Java 2020.11.29

1. 논리형 type ' boolean '은 왜 1bit가 아닌 1byte의 크기를 가질까?

JAVA의 기본형(Primitive type) 중 논리형 데이터 타입인 boolean은 true 혹은 false 둘중 하나의 값만을 가진다. true =1, false=0 이라고 간주하고 1 bit 면 충분히 표현 가능하다고 생각되는데, 왜 굳이 1byte 일까? 다행히도, google 검색을 통해 같은 질문을 찾을 수 있었다. 간단한 대답이 달렸는데, cpu가 1바이트 보다 작은 데이터를 처리 할 수 없다는 듯 두번째 대답도 비슷했다. 주소를 매길 수 있는 최소한의 단위가 byte 라는것. 검색을 이어가다보니 c 언어에서의 bool 타입도 똑같이 1 byte 를 차지한다는 걸 알 수 있었는데, 위의 이유 때문이라면 사실 어느 프로그래밍 언어에서도 논리형 데이터 타입이 1bit만 차지할 수는 없겠다. 실..

Programming/Java 2020.11.21