터미널 내에서 복붙
컨트롤 + insert 복사
컨트롤 + shift 붙여넣기
$git checkout -b bugFix
=>branch 생성과 함께 가르키기
브랜치 생성
$ git branch
커밋
$ git commit
이동
$ git checkout
브랜치 삭제
$ git branch -d
shift + insert 붙여넣기
목표
git init
git log
GIT 저장소 생성
touch 1
git add .
git commit -m "C0"
C0 만들기
touch 2
git add .
git commit -m "C1"
C1 만들기
git branch bugFix
bugFix 브랜치 생성
git branch bugFix2
bugFix2 브랜치 생성
git branch bugFix3
bugFix3 브랜치 생성
git branch bugFix4
bugFix4 브랜치 생성
git branch
전체 브랜치 리스팅
git branch -D bugFix4
bugFix4 브랜치 삭제
git branch
touch 3
git add .
git commit -m "C2"
C2 만들기
touch 4
git add .
git commit -m "C3"
C3 만들기
touch 5
git add .
git commit -m "C4"
C4 만들기
git chdckout bugFix3
브랜치 변경
git log --oneline --graph
touch 6
git add .
git commit -m "C5"
C5 만들기
git log --oneline --graph --all
전체 커밋 보기
자바
String 같은 내용이면 같은 메모리 사용
new String으로 하면 재활용X
-> 다른 객체로 생성
"아아"=="아아" -> true //같은곳을 가르키냐?
객체 관련 == 비교는 다 false
객체 동등성 비교하고 싶으면 equals() 사용 //내용물이 같냐?
=>object 클래스의 equals를 오버라이드 해야됌
들어온 객체가 사람 객체가 맞는지 확인하고 같은지 비교
Object o를 (사람)으로 형변환
this와 o 같은 내용물인지 비교
String도 객체
@Override //일종의 주석 이 메서드는 오버라이드 됬다 라는 표시
객체를 원하는 문장으로 출력하기
package org.example;
class Main {
public static void main(String[] args) {
사람 a사람1 = new 사람("홍길동", 22);
사람 a사람2 = new 사람("홍길순", 23);
System.out.println(a사람1);
System.out.println(a사람2);
}
}
class 사람 extends Object {
String 이름;
int 나이;
사람(String 이름, int 나이) {
this.이름 = 이름;
this.나이 = 나이;
}
@Override
public String toString() {
return "사람[이름=" + 이름 + ",나이=" + 나이 + "]";
}
}
이때 a사람.toString() 자동으로 호출됌 -> 문자열로 형변환 되기 때문에
인터페이스에 정의된 변수는 모두 상수
인터페이스에서 default 함수로 정의 가능
인터페이스의 메소드가 default키워드로 선언되면 인터페이스 내에서 구현될 수 있습니다. 또한 이를 구현하는 클래스는 default메소드를 오버라이딩 할 수도 있지요.
예를 들어,
public interface Calculator {
public int plus(int i, int j);
public int multiple(int i, int j);
default int exec(int i, int j){ // default로 선언하여 메소드를 구현할 수 있습니다.
return i + j;
}
}
static 함수엔 static 변수만
예외 발생 시키기
public int get50thItem(int []array){
if(array.length < 50){
throw new IllegalArgumentException();
}
Exception 클래스를 상속받은 경우 Checked exception이 됩니다. 이 경우, 반드시 오류를 처리해야 하며 만약 예외처리 하지 않으면 컴파일 오류를 발생시킵니다. RuntimeException을 상속받는 경우 Unchecked exception이 됩니다. 이 경우에는 예외처리를 하지 않아도 컴파일시에 오류를 발생시키지 않습니다.