2013-08-15 3 views
-2

У меня есть Java-код:Java, что означает «не может найти символ»?

NameTest.java:

public class NameTest 
{ 
    public static void main (String[] args) 
    { 
     Name = myName = new Name("John", "Smith", "Doe"); //This is Line 6 
     Name = wifeName = new Name ("Jane", "Smith"); 
     Name = single = new Name ("Smith"); 
     Name someName; 
     System.out.println ("myName: " + myName.toString()); 
    } 
} 

Сообщение об ошибке я получаю:

*~/Java1/Section5$ java -cp. Name.java NameTest.java 
Unrecognized option: -cp. 
Could not create the Java virtual machine. 
~/Java1/Section5$ javac NameTest.java 
NameTest.java:6: cannot find symbol 
symbol : variable Name 
location: class NameTest 
     Name = myName = new Name("John", "Smith", "Doe"); 
     ^
NameTest.java:6: cannot find symbol 

Что NameTest.java:6: cannot find symbol значит?

+0

Это не ваш код, вызывающий проблему. Ваша установка java испорчена. Посмотрите на первую строку ошибки. –

+1

@Cole «Cole9» Johnson: позже 4-я строка, которую вы видите, имеет ошибки компиляции, а не проблемы с установкой java. – Jayesh

+0

@Jayesh ok. Но действительно ли нам нужны 3 ответа, говорящих то же самое. –

ответ

2

у вас есть ошибка синтаксиса

Name = myName = new Name("John", "Smith", "Doe"); 

должен быть

Name myName = new Name("John", "Smith", "Doe"); 
+0

Спасибо всем, что сводило меня с ума. – user2684521

2

Вместо

Name = myName = new Name("John", "Smith", "Doe"); 

Использование

Name myName = new Name("John", "Smith", "Doe"); 

= - это assignment operator в java, который присваивает значение RHS LHS.

+0

большое спасибо – user2684521

1

Вы не можете использовать этот синтаксис:

Name = single = new Name ("Smith"); 

Вместо

Name single = new Name ("Smith"); 

Закрепление все это очистит ваш текущий список исключений (последний будет зафиксирован один раз Myname становится действительная ссылка).

Смежные вопросы