Invalid Gradle JDK configuration found
zip 파일을 다운받은 후 인텔리제이에서 실행하려고 할 때, 이러한 오류가 발생헀다.
콘솔창 옆에 Open Gradle Settings를 눌러준다.
여기서 'Gradle JVM'의 아래 화살표 방향을 눌러준다.
'Download JDK...'를 눌러 JDK를 다운받는다.
다운받으니 오류 메시지가 더 길어졌다. 여기서 Possible solution을 살펴보자.
아까 Gradle settings를 다시 열고 Gradle JVM의 버전을 바꿔주자.
'Gradle JVM'의 버전을 위와 같이 바꿔주니 잘 작동한다.
인텔리제이와 GitHub 연동 & commit, push
Git -> Manage Remotes... 클릭
+ 버튼 -> URL에 자신이 깃허브에서 만든 repository http 주소 붙여넣기하면 된다.
static, final, static final
static
- 객체 생성 없이 사용할 수 있는 필드와 메소드를 생성할 때 사용
- 공용 데이터에 해당하거나 인스턴스 필드를 포함하지 않는 메소드를 선언하고자할 때 사용
- 객체 생성 후 사용해도 되자만 추천하지 않는다.
- 객체 참조 없이 바로 사용할 수 있기 때문에 this 키워드 사용 불가
- static 데이터는 프로그램 실행 직후부터 끝날때까지 메모리 수명이 유지
public class StaticClass {
static int a = 10;
int b = 20;
static int addTwo(int x) {
return x + 2;
}
}
// main
int a = StaticClass.a;
int b = StaticClass.addTwo(1);
final
- 사용하는 곳마다 역할이 조금씩 다르다.
- 변수: 한 번만 초기화. 이후 수정 불가
- 메소드: 해당 메소드는 오버라이드 불가
- 클래스: 해당 클래스는 상속 불가 - 값을 저장하는 2가지 방법이 있다.
public class FinalClass {
// 1. 선언과 동시에 값 주기
final int a = 33;
// 2. 생성자에 의해 값 주기
final int b;
public FinalClass(int b) { this.b = b; }
}
static final
- final과 비슷한 역할이다.
- 필요한 이유?
- final의 2번째 방법은 객체마다 다른 상수 값을 갖도록 할 수 있다.
- 하지만 static final은 모든 객체가 같은 상수 값을 갖도록 해준다. - 모든 곳에서 하나의 값을 일관되게 사용하기 위해 사용
- 인스턴스가 만들어질때마다 새로운 메모리를 초기화하지 않고, 하나의 메모리 공간만 사용해서 효율적이다.
public class Circle {
static final double PI = 3.141592;
}
'TIL' 카테고리의 다른 글
[TIL] 과제풀이 중 새롭게 알게 된 것들 (1) | 2024.05.01 |
---|---|
[TIL] Enum 활용법, Generics [Java] (0) | 2024.04.30 |
[TIL] 프로세스와 스레드, 모던 자바(filter) [Java] (0) | 2024.04.26 |
[TIL] 예외처리 [Java] (0) | 2024.04.25 |
[TIL] 객체지향, 멤버, 접근 제어자, 상속, 추상 클래스, 인터페이스 [Java] (0) | 2024.04.24 |