청야의 개발 일기
[Java] 변수 사용 범위와 콘솔로 변수값 출력
1. 변수 사용 범위 main() 메소드 블록에는 다른 중괄호 {} 블록들이 작성될 수 있다. 조건문에 해당하는 if, 반복문에 해당하는 for, while 등이 중괄호 블록을 가질 수 있는데, 이러한 중괄호 블록 내에서 선언된 변수는 해당 중괄호 블록 내에서만 사용이 가능하고 밖에서는 사용할 수 없다. 아래는 실제 코드에서의 예시들이다. public static void main(String[] args) {//메소드 블록 int var1;//메소드 블록에서 선언 if() { int var2;//if 블록에서 선언 //변수 var1과 var2 사용 가능 } for() { int var3;//for 블록에서 선언 //변수 var1과 var3 사용 가능 } //var1 사용 가능 //var2와 var3은 ..
[Java] 타입 변환
1. 자동 타입 변환 자동 타입 변환(promotion)이란 말 그대로 자동으로 타입 변환이 일어나는 것을 말하며, 보통 값의 허용 범위가 작은 타입이 허용 범위가 큰 타입으로 대입될 때 발생한다. 기본 타입을 허용 범위 순으로 나열하면 아래와 같다. 더보기 byte < short, char < int < long < float < double char 타입의 경우 int 타입으로 자동 변환되면 유니코드 값이 int 타입에 대입된다. char charValue = 'A'; int intValue = charValue;//65가 저장됨 자동 타입 변환에서 예외가 존재한다. byte 타입은 char 타입보다 허용 범위가 작음에도 불구하고 자동 변환될 수 없다. 왜냐하면 char 타입의 허용 범위는 음수를 포..
[Java] 변수에 대한 이해_2 (논리, 문자열 타입)
1. 논리 타입 논리 리터럴은 참과 거짓을 의미하며 true와 false로 이루어져 있다. 논리 리터럴은 boolean 타입 변수에 아래와 같이 대입이 가능하다. boolean t = true; boolean f = false; boolean 타입 변수는 주로두 가지 상태값을 저장할 필요가 있을 경우에 사용되며, 상태값에 따라 조건문과 제어문의 실행 흐름을 변경하는 데 사용할 수 있다. 또한 연산식 중에서 비교 및 논리 연산의 산출값은 true 또는 false이므로 boolean 타입 변수에 대입이 가능하다. 아래를 참고하자. int x = 10; boolena result = (x == 20);//변수 x의 값이 20인가? / False boolena result = (x != 20);//변수 x의 값..
[Java] 변수에 대한 이해_1 (정수, 문자, 실수 타입)
1. 변수란 무엇일까? 변수(variable)는 하나의 값을 저장할 수 있는 메모리 번지에 붙여진 이름으로 변수를 통해 프로그램은 메모리 번지에 값을 저장하고 읽을 수 있다. 변수가 존재하는 덕분에 데이터를 쉽게 저장하여 메모리 관리가 쉬워진다. 자바의 변수는 다양한 타입의 값을 저장할 수 없기 때문에 정수형 변수에는 정수값만 저장할 수 있고, 실수형 변수에는 실수값만 저장할 수 있다. 변수의 이름은 첫 번째 글자가 문자여야 하고, 중간부터는 문자, 숫자, $, _를 포함할 수 있다. 또한, 첫 문자를 소문자로 시작하되 캐멀 스타일로 작성하는 것이 관례라고도 한다. 캐멀(camel) 스타일: 여러 단어를 혼합하여 명명하는 경우, 대소문자가 섞여있도록 작성하는 스타일이다. 자바 소스 파일명과 변수명을 작성..
![[Java] 자바 시작하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb1p3qf%2FbtrLYk0GtWv%2FhnauQBF5xl0WJU1TFAiwFk%2Fimg.png)
[Java] 자바 시작하기
0. 환경 Window 11 IntelliJ IDEA Java 17 1. 윈도우 환경 변수 설정 개발자를 준비하고 있다면 Java 정도는 스스로 설치할 수 있다고 생각하여 설치했다고 가정한다. 운영체제는 프로그램들이 실행하면서 사용할 수 있는 값들을 환경 변수 이름으로 관리하게 된다. JDK를 설치하고 나면 프로그램들이 JDK를 이용할 수 있도록 환경 변수를 생성하고, Path 환경 변수를 수정해 주는 것이 좋으니 설정해보도록 하겠다. 1) 환경 변수를 새로 만들거나 편집하기 위해서는 환경 변수 대화 상자를 열어야 한다. 윈도우 키를 눌러 나오는 검색 칸에 '환경 변수'를 입력하면 [시스템 환경 변수 편집] 메뉴가 나오는데, 이것을 눌러주자. 이것을 눌러주면 아래와 같은 시스템 속성 창이 나오는데 [환경..
![[Git] 충돌 해결](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCfsuf%2FbtrGUsuIj3b%2Fx9kBps6SgHIbUsbrct1F00%2Fimg.png)
[Git] 충돌 해결
파일의 같은 위치에 다른 내용이 입력이 되어있는 상황이라면 브랜츠 간 충돌이 일어날 수 있습니다. 이것을 해결해보겠습니다. 0. 상황 만들기 conflict-1, conflict-2 브랜치 생성하기 main 브랜치 Cheong의 manager를 Kenneth로 변경하기 apeach의 coach를 Nicholas로 변경하기 Friend의 coach를 Shirley로 변경하기 커밋 메세지 : Edit Cheong, apeach, Friend conflict-1 브랜채 Cheong의 manager를 Deborah로 변경 커밋 메세지 : Edit Cheong conflict-2 브랜치 1차 apeach의 coach를 Melissa로 변경 커밋 메세지 : Edit apeach conflict-2 브랜치 2차 Fr..
![[Git] Branch 합치기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdXpgDN%2FbtrGM3QfX5l%2Fr4u8cuOZipaCdwLUiDbotK%2Fimg.png)
[Git] Branch 합치기
0. 합치기 위하여 사용되는 방법 Merge : 두 브랜치를 한개의 커밋에 이어서 붙이는 용도로 사용됩니다. 브랜치의 사용내역을 남길 필요가 있을 때 사용하는 방식입니다. Rebase : 브랜치들을 그대로 잘라서 가져옴. 히스토리를 깔끔하게 만들 수 있다는 장점이 존재함. 브랜치의 사용내역을 지우고 한 줄로 깔끔하게 정리된 내역을 유지하기 위해서 사용되는 방식입니다. 이미 팀원들간에 공유된 커밋들에 대해서는 사용하지 않는게 좋습니다. 1. Marge 사용 main 브랜치로 이동한 후 add-coach 브랜치를 main 브랜치로 합쳐주도록 하겠습니다. # git merge (합쳐질 브랜치 이름) git merge add-coach 명령어를 입력한다면 아래와 같이 어떠한 것들이 합쳐졌는지 확인할 수 있습니다..
![[Git] Branch 만들기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDRpJb%2FbtrGJ06Rxuh%2F5Lcfw84xhbaOTphw6v33Ek%2Fimg.png)
[Git] Branch 만들기
0. Branch 란? Branch(브랜치)란 하나의 프로젝트를 여러 갈래로 나누어서 관리할 수 있게끔 해주는 것이다. 나누어서 관리하는 만큼 동일한 소스코드를 통해서 신규 개발, 버그 수정 등의 여러가지 업무를 동시에 작업하게끔 할 수 있다. 1. Branch 생성, 이동, 삭제하기 시작하기 전에 먼저 터미널 창을 봐주도록 하겠습니다. 파일이 저장되어 있는 곳의 주소가 나온 후 (main)이라는 이름이 보이는데 이것이 현재 있는 곳의 브랜치입니다. ※ 블로그 Git&GitHUB의 1번 글에서 한 것 처럼 브랜치 이름을 main으로 변경해주지 않았다면 master 로 출력이 될 것입니다. 이제 아래의 명령어를 이용하여 add-coach 이란 이름의 브랜치를 생성해주도록 하겠습니다. # git branch..
![[Git] 과거의 프로젝트로 돌아가기(SourceTree)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmkeZh%2FbtrGaWxvW1B%2F6wJGeXHslewofKwh84MZ30%2Fimg.png)
[Git] 과거의 프로젝트로 돌아가기(SourceTree)
1. 변경사항을 생성한 후 커밋 다음과 같은 변경사항을 만들어주도록 하겠습니다. VS Code에서 apeach.yaml 삭제 .gitignore에 *.config 추가 hello.txt 생성 (내용 자유) 해당 작업이 끝났다면 SourceTree로 확인을 해보겠습니다. 아래와 같은 상황으로 되어있을 것입니다. 커밋하지 않은 변경사항 즉, 아직 저장이 되지 않은 상황임을 뜻하며 맨 하단에 스테이지에 올라가지 않은 파일에 방금 수정, 삭제, 추가한 파일들이 존재하는걸 확인할 수 있습니다. 그렇다면 저 세가지 파일들을 스테이지에 올려보도록 하겠습니다. 우리가 명령어를 작성하던 add와 같은 작업을 하신다고 생각하면 됩니다. 하는 방법은 간단히 파일들의 옆에 존재하는 + 모양 버튼을 눌러 하나씩 올리거나 상단바..
![[Git] 과거의 프로젝트로 돌아가기(Revert)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcGl7iG%2FbtrF8Rn2pbM%2F0ZgzkO7ysEbQTvSPkD9dJk%2Fimg.png)
[Git] 과거의 프로젝트로 돌아가기(Revert)
1. Revert 이용해보기 Add Costco to Choeng rever는 되돌릴것 즉, 취소할 커밋의 해시를 찾아야합니다. Add Costco to Cheong의 해시를 git log를 사용하여 복사한 후 아래처럼 명령어를 작성해주도록 하겠습니다. # revert 뒤에는 자신의 커밋의 해시를 작성 git revert 7d2426aa309e26704aec3382bec85ea562b35bac 작성한다면 아래의 사진과 같은 화면이 출력이 될 것입니다. 맨 상단에 보이는 주황색 글씨가 저장될 커밋의 이름이며, 만일 수정할 것이 없다면 :wq를 쳐주시면 순조롭게 빠져나옴과 동시에 커밋으로 저장이 됩니다.(:wq와 같은 명령어는 3번 글을 봐주시길 바랍니다.) 알기 쉽게 소스트리를 이용하여 확인해보도록 하겠습..