Как создать пакет в Java? - Вопросы

Всего: 5 вопросов

1. 

Что такое пакет в Java и какие задачи он решает?

Пакет — это механизм группировки классов, аналогичный каталогам файловой системы (и должен совпадать с ней). Пакеты решают две задачи: организуют большое количество классов и разделяют пространства имён, чтобы два класса с одинаковым названием не конфликтовали. Кроме того, пакеты управляют доступностью: в пакете можно определить классы и члены, доступные только коду внутри этого же пакета.

2. 

Как добавить класс в пакет?

Нужно выполнить два действия: указать оператор package первой строкой файла и разместить класс в одноимённом пакету каталоге. Полное имя класса при этом включает имя пакета — например, lesson1.MyFirstApp.

package lesson1;

public class MyFirstApp {
    public static void main(String[] args) {
        System.out.println("Hello world!");
    }
}
3. 

Какие правила существуют для именования пакетов в коммерческих проектах?

Для коммерческих проектов имя пакета обычно начинается с com, затем следует имя организации и название проекта, а дальше пакеты именуются по функциональному признаку. Например, для сайта examclouds.com: com.examclouds.examples.code.lesson1. В имени пакета принято использовать только маленькие буквы.

4. 

Как скомпилировать и запустить класс, находящийся в пакете lesson1?

При компиляции используют ключ -d, указывающий, куда поместить скомпилированные классы, и относительный путь к файлу. После этого класс запускается по его полному имени (с именем пакета).

cd project1/src
javac -d ../classes lesson1/MyFirstApp.java

cd project1/classes
java lesson1.MyFirstApp
5. 

Для чего нужен оператор import и где он размещается в файле?

Без импорта к классу из другого пакета нужно обращаться по полному имени, что неудобно. Оператор import позволяет обращаться к классу по короткому имени. Операторы import ставятся после объявления package и до определения классов. Можно импортировать как отдельный класс, так и весь пакет через *.

import java.util.regex.Matcher;
import java.time.*;
Страница 1 из 1