강의로 돌아가기
-

c1.name = "소방차"; 에러메세지 출현

public class CarExam {

public static void main(String[] args) {
Car c1 = new Car();
Car c2 = new Car();

c1.name = 소방차;

Car class에서
String name;
int number;

필드명을 선언하였습니다.

그럼에도 불구하고 c1.name = 소방차 를 입력하고 엔터키를 누르니 에러 라고 합니다. name위에 커서를 두니 Creat field name in type Car라는 밑물친 메세지가 뜨며, 이 메세지를 클릭하니 자동으로 Car class로 넘어가서
public String name; 이 자동으로 입력되고
CarExam class에서도 c1.name = 소방차도 에러메세지가 사라졌습니다.

어떤 일이 일어나고 있는지 잘 알 수가 없습니다.

  • 김수연
    Car 클래스에 선언한 내용을 메인에서 가져다 쓰려면 public 이라고 써주어야 합니다. Public을 써야만 어디서든 가져다 사용 할 수 있습니다. 김수연 2018.10.23 10:32
3 개의 답변
정두식_

이클립스에서 오류를 수정하는걸 도와주는 기능입니다.

c1.name뒤에 문자열을 넣었으니 문자열 타입의 public멤버변수를 선언하도록 도와주는겁니다.

-

package hello01;
public class Car {

String name;
int num;

public static void main(String[] args) {

Car c1 = new Car();
Car c2 = new Car();

c1.name = 소방차;
c1.num = 1234;

c2.name = 구급차;
c2.num = 1111;

System.out.println(c1.name);
System.out.println(c1.num);

System.out.println(c2.name);
System.out.println(c2.num);
}
}

해보세여..

  • 박열림
    아하 한 창에서 만들 때는 main 밖/ class 사이에 선언을 해줘야 하는군요! 감사합니다!! 박열림 2018.07.15 21:16
JinYoung  Kim

c1.name = 소방차; 이렇게 쓰신거 아니에요?
스트링형인
c1.name = 소방차; 이렇게 쓰셨다면 에러발생 안하는데

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.