Напишите Java-программу для чтения текстового файла без использования операторов импорта в программе. - PullRequest
0 голосов
/ 19 января 2010

Этот вопрос был задан в одном из интервью, я должен написать программу, но в программе не должно быть никаких операторов импорта, так как мне нужно импортировать пакет java.io. *. Является ли эта программа более эффективной без использования операторов импорта?

Ответы [ 6 ]

1 голос
/ 19 января 2010

Операторы импорта не влияют на эффективность времени выполнения.

Но это интересный вопрос. Я предполагаю, что вы можете сделать это в зависимости от платформы. Например:

Используйте java.lang.Runtime для выполнения (exec) собственной команды (например, cat) и захвата ее вывода, используя process.getInputStream().read(..) (это использует InputStream, но не импортирует ее)

Другой вариант, который, как я полагаю, не является предметом вопроса, поскольку тогда это будет глупый вопрос, заключается в использовании в вашем коде полных имен классов java.io..

1 голос
/ 19 января 2010

Если вы явно импортируете в начале исходного файла или явно указали, что использование класса (java.io.Writer input = new java.io.Writer ...) не имеет значения, так как компилятор создает байт-код.

1 голос
/ 19 января 2010

Это глупый вопрос. Вам придется использовать полные имена в вашем исходном коде. Я не думаю, что это имеет какое-либо значение, чем использование импорта.

Вопрос имел бы смысл, если бы вас попросили выполнить задачу, которая может быть реализована только с помощью классов java.lang. Но чтение файла - не такая задача.

1 голос
/ 19 января 2010

Это не более эффективно. Я думаю, это просто ребята пытались выяснить, понимаете ли вы, что идет под импорт или нет.

Существует разница в "импорте" в C ++ и Java.
И кажется, что они просто проверяют вашу осведомленность об этом.

0 голосов
/ 19 января 2010

да, вы можете использовать полное имя. так как компилятор преобразует ваши операторы импорта в полные имена.

0 голосов
/ 19 января 2010

Один из возможных способов:

Используйте java.lang.Runtime для вызова команд ОС для чтения файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...