2016-01-05 3 views
1

В следующем коде есть ли способ для test1 ссылаться на test2variable без добавления имени класса? Я не знаю, будет ли работать инструкция import, или если test1 должен расширить test2, чтобы этого не было.Вам нужно добавить класс к переменной в другой класс?

public class test1 { 

    public static void main(String[] args) { 
     System.out.println("its " + test2variable);  // this doesnt work 
     System.out.println("its " + test2.test2variable); // this works 
    } 
} 

class test2 { 
    public static int test2variable = 2; 
} 

EDIT: В этом случае, приведенный выше код в том же файле, так что я получил ошибку на статический оператор импорта

+0

следующие классы в одном файле или в разных файлах? Кроме того, ваши имена классов должны быть прописными. – TangledUpInBlue

+0

На самом деле они находятся в одном файле в этом сценарии, поэтому я получил сообщение об ошибке со статическим оператором импорта .... – user3302169

+0

Сделайте test2 статическим классом. – TangledUpInBlue

ответ

7

Вы можете использовать то, что называется «статический импорт».

То есть, в классе test1:

import static test2.test2variable; 

Это работает только потому, что test2.test2variable является staticpublic).


Также обратите внимание, что мы обычно называем класс стартовой буквой верхнего регистра.

0

test2variable только в классе test2 - так что вам нужно набрать все это.

+0

Кроме того, это переменная 'static', поэтому вы можете использовать статический Импортировать. –

3

Добавить import static test2.test2variable; в свои операторы импорта.

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