목록IT (51)
백업하는 인생

1. setter : 데이터는 외부에서 접근하지 않도록 막고, 메소드는 공개해서 외부에서 메소드를 통해 데이터에 접근하도록 유도 2. getter : 필드값을 가공 후 외부로 값을 전달하는 것 3. getter,setter 사용이유: 데이터를 보호하기 위해서 데이터를 외부에서 읽고 변경 할 수 있을 경우, 데이터의 무결성이 깨질 수 있다. 이것을 방지하기 위해서 직접적으로 필드에 접근하는 방식이 아니라, setter메소드를 통해 데이터에 접근하도록 유도 한 후 그 안에서 처리를 하고 getter 메소드를 통해서 값을 되돌려 주는 방식을 선호한다. 이 때 데이터 복사본을 던져주기 때문에 원래 객체의 데이터를 손상 시키지 않는다. 따라서 원본 데이터는 안전하다. 예를 들어보자. Car 이라는 클래스안에 sp..

1. 싱글톤: '하나'의 인스턴스만 생성하여 사용하는 것 2. 사용이유 1) 메모리 낭비 줄일 수 있음 2) 싱글톤으로 만든 인스턴스는 전역이므로 다른 클래스의 인스턴스들끼리 데이터 공유가능 new 를 이용해서 객체를 생성할 때마다 메모리에 저장되는데, 이것은 메모리 낭비로 이어질 수 있다. 싱글톤은 똑같은 인스턴스를 여러개 만들지 않고 인스턴스를 하나만 만들어놓고, 기존의 인스턴스를 활용하는 것을 말한다. 싱글톤을 사용하여 객체 생성을 줄임으로써 메모리낭비를 줄일 수 있다. 싱글톤을 만들기 위해서는 클래스 외부에서 new연산자로 생성자를 호출할 수 없도록 막아야 한다. 생성자 앞에 private 접근 제한자를 붙여줌으로써 생성자가 외부에서 호출되는 걸 막자. Singleton이라는 객체를 생성해두고 앞..

객체와 인스턴스 차이점에 대해서 구글링해보았다. 객체란? 소프트웨어 세계에 구현할 대상 클래스란? 이를 구현하기 위한 설계도 인스턴스란? 이 설계도에 따란 소프트웨어 세계에 구현된 실체 ..... 쩝.. 뭔가 알거 같으면서도 모르겠다. 객체를 만들 때 객체는 클래스라는 설계도에 의해서 만들어지고, 만들어진 그 객체는 메모리에 저장되어진다. 메모리에 저장되어 진 상태의 객체를 인스턴스라고 부르는 거 같다. 그냥 인스턴스는 객체에 포함되는 개념이기 때문에, 그냥 객체와 인스턴스는 거의 같은 의미라고 보면 될 거 같다. 인스턴스멤버와 정적멤버 1) 인스턴스멤버 인스턴스 멤버란 new를 이용하여 객체를 생성했을 때 비로소 사용할 수 있는 필드와 메소드를 말한다. 이 때 사용된 필드와 메소드를 각각 인스턴스 필드..

1) 클래스 만들기 클래스를 만들고 싶은 package위에서 마우스 오른쪽 > new > Class 2) 만들어진 클래스 파일에 필드 작성 클래스명은 대문자로! 3) 현재 작업하고있는 파일에 끌어다 쓰는 법 현재 지금 작업하고 있는 페이지에서 객체를 생성한 후 사용하면 된다. 클래스와 객체에 대한 기초적인 내용은 아래 페이지 참고 클래스와 객체1_ 클래스와 객체란? 객체 세상에는 사물, 사람, 동물 등이 존재한다. 이것들은 각각 고유의 정보와 기능들을 가지고 있는데, 이걸 객체라고 한다. 뭔 말인지 모르겠으니까 빨리 예제를 보자. 더보기 ex1) 사람( => 객체 5ummer.tistory.com

객체 세상에는 사물, 사람, 동물 등이 존재한다. 이것들은 각각 고유의 정보와 기능들을 가지고 있는데, 이걸 객체라고 한다. 뭔 말인지 모르겠으니까 빨리 예제를 보자. 더보기 ex1) 사람( => 객체) 정보(=데이터, 필드, 속성): 이름, 나이, 주민번호, 혈액형 등등 동작(=메소드): 움직일 수 있음, 걸을수 있음, 웃을 수 있음 등등.... ex2) 자동차 ( => 객체) 정보(=데이터, 필드, 속성): 차종, 차 색깔, 등등 동작(=메소드):: 달릴 수 있음,..... 등 (음.... 차가 할 수 있는 거 더 생각 안남) 사람과 자동차가 객체인데, 이러한 객체들 속에는 각각 저런 정보를 담고 있다 정도만 알고 있으면 될 거 같다. 명사로 기재 될 수 있는 정보를 프로그래밍에서는 필드 및 속성이라..

깃허브에는 커밋을 얼마나 했는지 한눈에 보여주는 게 있는데 그걸 잔디라고 부른다. 사람들은 이걸 잔디 심기라고 부르면서 매일 1일 1커밋을 목표로 하는 사람들이 많은 것 같다. 나도 며칠 전부터 1일 1커밋을 목표로 잔디심기를 진행중인데 커밋 10번을 했는데도 불구하고 잔디가 심어지지 않았다. 바로 구글링하여 방법을 찾아냈다! 1) git config --list 시작 > command 창 열어서 git config --list 입력하면 나의 깃허브 정보를 쫙 볼 수있다. 2) 깃허브에 등록되어있는 이메일정보 확인 깃허브 홈페이지로 가서 이메일을 확인한 후 cmd창에 있는 내용과 다르다면 바꿔줘야 한다. 깃허브에 등록되어있는 이메일을 확인하는 방법은 아래와 같다. 3) cmd창에서 정보 변경 만약 정보가..

1. 마크다운의 정의 Markdown은 텍스트 기반의 마크업언어로 쉽게 쓰고 읽을 수 있으며 HTML로 변환이 가능하다. 깃허브 overview 꾸미는데 유용하다. 2. 마크다운 문법 종류 1) 제목 h1 ~ h6 # This is a H1 ## This is a H2 ### This is a H3 #### This is a H4 ##### This is a H5 ###### This is a H6 2) 인용문자 > This is a first blockqute. >> This is a second blockqute. >>> This is a third blockqute. 3) 목록 3-1) 순서있는 목록(번호) 1. 첫번째 2. 두번째 3. 세번째 3-2) 순서없는 목록 * 1단계 - 2단계 + 3단계..
변수의 정의 하나의 값을 저장할 수 있는 저장공간. 변수는 정수, 실수 등 다양한 타입의 값을 저장할 수 있다. 변수에는 하나의 값만 저장하고 읽을 수 있다. 프로그래밍 언어마다 다르지만, 자바의 변수는 다양한 타입의 값을 저장 할 수 없다. 정수타입변수에는 정수값만 저장할 수 있고, 실수 타입 변수에는 실수값만 저장할 수 있다. 변수선언 int age; // 정수(int)값을 저장할 수있는 age 변수 선언 double value; //실수(float)값을 저장할 수있는 value라는 변수 선언 변수 이름 명명규칙 첫번째 글자는 문자이거나 $,_이어야 하고 숫자로 시작할 수 없음 영어 대소문자 구분(필수) 첫 문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫 문자를 대문자로(camel case..

디버깅이란? 디버깅이란 코드에서 버그를 제거하는 것을 의미한다. 디버그 모드란, 사용자가 좀 더 쉽게 디버깅을 할 수 있도록 도와주는 기능을 말하는데, 이클립스에서 이러한 디버그모드를 지원하고있다. 개발시 디버깅 모드를 이용하여 한줄한줄씩 실행해보면 어디서 에러가 났는지 쉽게 찾을 수 있다. 디버깅 모드 사용법 1) 이클립스에서 확인하고싶은 부분 breakpoint 찍기 2) 벌레모양 아이콘(=디버깅 실행 아이콘) 클릭하여 디버깅 모드 실행 breakpoint를 찍어놓고 디버깅 실행 아이콘을 클릭하면 변수 정보를 보여주는 탭이 생성되면서, 변수에 담긴 값을 확인 할 수 있게 된다. 디버깅 실행 아이콘은 breakpoint를 찍어야만 진가를 발휘 할 수 있는데, breakpoint가 없을 경우 디버깅을하지..

jdk(Java Development Kit) 자바 개발도구(Java Development Kit)의 약자. 실제로 자바를 개발을 하는데 있어서 사용되는 것. 개발 시 필요한 라이브러리들과 javac, javadoc 등 개발 도구들을 포함되어 있고 개발을 하려면 당연히 실행도 시켜줘야 하기 때문에 JRE (Java Runtime Environment)도 함께 포함되어있다. 즉 JDK는 JRE(for 자바실행) + 개발을 위해 필요한 도구(javac, java등)가 들어있다. jre(Java Runtime Environment) 자바로 만들어진 프로그램을 실행시키는데 필요한 라이브러리들과 각종 API, 그리고 자바 가상 머신 (JVM)이 포함되어있다. JRE는 자바로 개발은 안되고 실행만 된다. 결론 Ja..