float data = System.in.read();
System.out.printf("입력하신 문자는 %d입니다.", data);
발생 이유
해결 방법
int a = 100;
int a = 170;
String data = System.in.read();
발생 이유
해결 방법
int a = 10
발생 이유
해결 방법
int a = 10;
int a = ;
발생 이유
해결 방법
int a = 10;
int a = b;
발생 이유
해결 방법
int b = 20;
System.out.println(");
발생 이유
해결 방법
System.out.println(**"**안녕하세요.**"**);
String name = "다인";
System.out.println("안녕하세요. 저는 %s입니다.", name);
발생 이유
해결 방법
System.out.println("안녕하세요. 저는 " + name + "입니다.");
byte size;
System.out.println(size);
발생 이유
해결 방법
byte size = 230;
byte 123num;
발생 이유
해결 방법
//변수명을 숫자로 꼭 시작하고 싶다면 _를 사용해준다.
byte _123num;
long money = 1000000000000000;
발생 이유
해결 방법
long money = 1000000000000000**L**;
Type mismatch: cannot convert from double to float
float f1;
f1 = 3.14;
발생 이유
해결 방법
char m1 = ' ';
char m1 = '';
발생 이유
해결 방법
char m1 = ' ';
short s2 = 10;
byte b2;
b2 = s2;
발생 이유
해결 방법
b2 = (byte)s2;
System.out.printf("%d % %d = %d\n", num1, num2, num1 % num2);
발생 이유
해결 방법
System.out.printf("%d %% %d = %d\n", num1, num2, num1 % num2);
int money1 = 2000000000;
int money2 = 1500000000;
System.out.println("잔액 : " + (money1 + money2)); //잔액 : -794967296
발생 이유
해결 방법
System.out.println("잔액 : " + (money1 + (long)money2));
String str1 = "홍길동";
String str2 = "홍";
str2 = str2 + "길동";
System.out.println(str1 == str2);
발생 이유
해결 방법
System.out.println(str1.equals(str4));
String address = "서울";
int num = 5;
System.out.println(address.equals("서울") && num.equals(5));
발생 이유
해결 방법
String address = "서울";
String hair = "긴머리";
System.out.println(address.equals("서울") && hair.equals("긴머리"));
package study.name;
발생 이유
해결 방법
package study.java;
package study.name;
발생 이유
해결 방법
package study.java;
if (true) {
System.out.println("안녕하세요");
} else (true){
System.out.println("반가워요");
};
발생 이유
해결 방법
if (true) {
System.out.println("안녕하세요");
} else if (true){
System.out.println("반가워요");
};
switch (true) {
case 3:case 4: case 5:
System.out.println("봄입니다.");
break;
case 6: case 7: case 8:
System.out.println("여름입니다.");
break;
case 9: case 10: case 11:
System.out.println("가을입니다.");
break;
default :
System.out.println("겨울입니다.");
발생 이유
해결 방법
int month = scan.nextInt();
switch (month) {
case 3:case 4: case 5:
System.out.println("봄입니다.");
break;
case 6: case 7: case 8:
System.out.println("여름입니다.");
break;
case 9: case 10: case 11:
System.out.println("가을입니다.");
break;
default :
System.out.println("겨울입니다.");
public static int test() {}
발생 이유
해결 방법
public static int test(int a, int b) {
return a+b;
}
public static void test() {
return 100;
}
발생 이유
해결 방법
public static int test() {
System.out.println("테스트1");
return 100;
public static int test() {
System.out.println("테스트1");
return 100;
//리턴 뒤에 코드를 적으면 안된다.
//System.out.println("테스트2"); //Unreachable code
}
발생 이유
해결 방법
public static int test() {
System.out.println("테스트1");
System.out.println("테스트2");
return 100;
}
public static void hi(String name) {
String name = "홍길동";
System.out.printf("%s님 안녕하세요\n", name);
}
발생 이유
해결 방법
public static void hi(String name) {
System.out.printf("%s님 안녕하세요\n", name);
}
public class Ex14_Method {
public static void main(String[] args) {
hi();
}
public static void hi(String name) {
System.out.printf("%s님 안녕하세요\n", name);
}
}
발생 이유
해결 방법
public class Ex14_Method {
public static void main(String[] args) {
hi("홍길동");
}
public static void hi(String name) {
System.out.printf("%s님 안녕하세요\n", name);
}
}
Calendar now = Calendar.getInstance(); //현재 시각
Calendar birthday = Calendar.getInstance();//태어난 시각
birthday.set(1997, 8, 25, 13, 30, 50);
System.out.println(now - birthday); //에러
발생 이유
해결 방법
Calendar now = Calendar.getInstance(); //현재 시각
Calendar birthday = Calendar.getInstance();//태어난 시각
birthday.set(1997, 8, 25, 13, 30, 50);
long nowTick = now.getTimeInMillis();
long birthTick = birthday.getTimeInMillis();
System.out.println((nowTick - birthTick) / 1000 / 60 / 60 / 24);
int num = 10;
if(num > 0) {
String result = "통과";
}
System.out.println(result); //에러
발생 이유
해결 방법
int num = 10;
String result = " ";
if(num > 0) {
result = "통과";
}
System.out.println(result);
public class Ex22_for {
public static void main(String[] args) {
}
}
} //에러
발생 이유
해결 방법
public class Ex22_for {
public static void main(String[] args) {
}
}
String txt = "안녕하세요. 홍길동입니다.";
char c = txt.charAt(30); //에러
System.out.println(c);
발생 이유
해결 방법
String txt = "안녕하세요. 홍길동입니다.";
char c = txt.charAt(3);
System.out.println(c);
int[] num = new int[10];
for(int i=0; i<num.length; i++) {
num[i] = i + 1;
}
System.out.println(num[9]); //에러
발생 이유
해결 방법
int[] num = new int[10];
for(int i=0; i<num.length; i++) {
num[i] = i + 1;
}
System.out.println(num[1]);
class AAA {
public int a;
public void aaa() {
System.out.println("부모 행동");
}
}
class BBB { //에러
public int b;
public void bbb() {
}
public void aaa() {
System.out.println("자식행동");
}
}
발생 이유
해결 방법
class AAA {
public int a;
public void aaa() {
System.out.println("부모 행동");
}
}
class BBB extends AAA {
public int b;
public void bbb() {
}
public void aaa() {
System.out.println("자식행동");
}
}
final class FinalParent {
public final void test() {
System.out.println("부모 행동");
}
}
class FinalChild extends FinalParent {
//고치지 말라는 메소드를 고쳤다. -> 예기치못한 문제 발생 가능성!!
@Override
public void test() {
System.out.println("자식 행동");
}
}
발생 이유
해결 방법
final class FinalParent {
public final void test() {
System.out.println("부모 행동");
}
}
class FinalChild extends FinalParent {
}
private void remove(String key) {
for(int i = indexKey(key) ; i<this.index-1 ; i++) {
this.keys[i] = this.keys[i+1];
this.values[i] = this.values[i+1];
}
this.index--;
}
발생 이유
해결 방법
public void remove(String key) {
for(int i = indexKey(key) ; i<this.index-1 ; i++) {
this.keys[i] = this.keys[i+1];
this.values[i] = this.values[i+1];
}
this.index--;
}
int a = 10; //일반 변수
final int b = 20; //final 변수
System.out.println(a);
System.out.println(b);
a = 30;
//b = 40; //에러
발생 이유
해결 방법
int a = 10; //일반 변수
final int B = 20; //final 변수
System.out.println(a);
System.out.println(B);
a = 30;
Parent p3 = new Parent();
Child c3;
c3 = (Child)p3; //에러
발생 이유
해결 방법
Parent p4;
Child c4 = new Child();
//업캐스팅
p4 = c4; //안전
Child c5;
//다운캐스팅 -> 가능한 작업(*****)
//자식클래스 = 부모클래스로 보이지만 실제로는 Child -> Child 한 것(*****)
c5 = (Child)p4;
ArrayList num2 = new ArrayList();
num2.add(100);
num2.add(200);
num2.add(300);
System.out.println(num2.get(0)*2); //에러
발생 이유
해결 방법
ArrayList num2 = new ArrayList();
num2.add(100);
num2.add(200);
num2.add(300);
System.out.println((int)num2.get(0)*2);