자바 6

일단 마시고 본다. (상속)

자바를 개발하다 보면 상속이라는 개념을 배우게 됩니다. 그리곤 extends Object 가 있다는 것만 기억하게 되고 상속을 잊어버립니다. (전부가 그렇다는 것은 아니지만 제 친구는 잊어버렸습니다. 실제로 추상클래스 상속하라고 했더니 클래스 상속 어떻게 하는 건데? 인터페이스여야지만 상속되는 거 아니었음? 라고 했던 비하인드가 있습니다.(그친구는 개발에 흥미만 있는 친구입니다.)) 상속은 자바에 있어 굉장히 중요한 개념입니다. 부모가 가진 것을 자식에게 물려줄 수 있다는 점, 그리고 protected로 부모와 자식외에는 접근조차 불가한 접근 제어자까지 있습니다. 또, 부모에서 받은 것들을 재정의할 수 있다는 점에서 더 중요함을 알려줍니다. 예시를 들자면, Machine과 Robot으로 간단하게 들 수 ..

공부/Java 2022.04.25

일상이에요

요즘 기분이 울적해져서 더 숨어서 찾기 힘들어진 오잎 클로버입니다. 왜 울적함을 느끼는 원인을 아직 못 찾았습니다. 그래서 원인을 찾는 것을 포기하고 취업과 관련한 글들과 블로그 등등을 읽어보고 있습니다. 그리고 이를 기반으로 아마 또 포스팅할 것 같습니다. 같은 주제로 계속 포스트를 하는 이유는 이전에 부족했거나 잘못된 내용을 수정, 그리고 더 새로운 정보를 얻고 이를 저처럼 취업을 목표로 하는 분들에게 조금이나마 도움이 되었음 하는 마음에 하는 것입니다. 현재 자바를 기초부터 천천히 다시 공부하고 있습니다. 현재 학교 동아리 CNS(Care And Service) 팀에서 1학년 상대로 자바 강의를 해주는 것을 덤으로 저 역시 공부하고 있습니다. 기본적으로 C언어와 문법적인 요소는 비슷하다 보니 출력,..

일상 2022.03.27

[학교/자바] 두 번째 수업

수업일자: 2022.03.23 두 번째 수업에는 데이터 타입 중 기본형에 대해 배웠습니다. byte, short, int, long, float, double, boolean. 그리고 cast(형변환) 이렇게 8가지에 대해 배웠습니다. 다음 클래스는 수업 시간동안한 코드입니다. public class DataTypeStudy { public void studyInteger() { byte byteValue = 127; short shortValue = 32767; int intValue = 0x7fffffff; long longValue = 1000000000000000000L; } public void studyReal() { float floatValue = 3.14159265359F; double ..

자바 소켓을 사용한 단순한 채팅 프로그램

심심해서 개발해보았습니다. 자기만족용 영상입니다. 자바 자체적으로 있는 소켓을 사용하여 1대1 채팅 프로그램을 제작하였습니다. 소스코드는 이링크를 참조해주세요. (스타 눌러주시면 감사하겠습니다..) server를 먼저 실행한 후, client를 실행하면 잘 작동합니다. (아직 오류가 있습니다. 둘 중 하나가 먼저 종료가 되면 null이 끊임없이 출력됩니다.)

일단 마시고 본다. (제네릭)

자바는 최적화를 시키는 데 도움을 주는 형태인 generic이 있습니다. 제네릭은 코드를 최적화 및 일반화시키는 데 있어 굉장한 도움을 줍니다. 자바를 한 지 얼마 되지않으셨거나 혹은 제네릭을 쓰지않은 채로 개발을 하면 중복코드가 굉장히 많이 생길뿐더러 중복 클래스 역시 많이 생깁니다. (물론 예외처리시에는 중복 클래스를 여러개를 사용하는 경우가 더러 있습니다.) 예시를 들어 설명해드리자면 어떠한 형태를 입출력하는 클래스를 만든다고 가정을 해봅시다. 그러면 대표적인 형태인 정수(Integer), 부동소수점수(Float), 실수(Double), 문자열(String) 등 여러가지가 있을 겁니다. 이를 하나하나 클래스로 나타나면 대충 이런 형태일 겁니다. public class IntegerPrinter { ..

공부/Java 2022.01.08

일단 마시고 본다. (인터페이스 default와 static)

제가 자바를 독학으로 3년정도하였는 데도 역시 가끔 까먹는 경우가 발생하여 이를 계속 이해하고 기억하고자 글을 쓰게 되었습니다. 제목이 일단 마시고 본다. 의 의미는 자바의 유래로 말장난을 한 것입니다. (자바 언어는 자바 커피에서 유래된 이름입니다. 그래서 일단 자바를 마시고 나서 이해를 하자. 즉, 일단 개발해보면서 차차 이해해가자 라는 의미입니다.) 먼저 다른 중요한 것들은 다 빼먹고 인터페이스부터 시작하는 이유는 인터페이스의 default 메소드와 static 메소드 때문에 쓰기 시작했습니다. 일단 둘 다 인터페이스에서 메소드를 정의를 하여 이를 그대로 사용할 수 있다는 공통점이 있지만 자바는 최적화 언어의 대명사처럼 굳이 똑같은 기능들 2개나 제공해주지않았을 거라는 믿음에서 천천히 알아보았습니다..

공부/Java 2022.01.05