как статический внутренний класс по умолчанию может быть доступен из внутреннего теста

#spring

#spring

Вопрос:

Это звучит как глупый вопрос, но мне было интересно, почему статический внутренний класс по умолчанию YN в User классе в main каталоге может быть доступен UserTest в test каталоге.

Я знаю, что модификатор доступа по умолчанию может иметь доступ к одному и тому же пакету, но main каталог и test каталог кажутся разными, но как он может получить доступ к классу по умолчанию внутри?

 package com.microservice.user.domain;

public class User {

    static enum YN{
        Y, N;
    }

}

  
 package com.microservice.user.domain;

class UserTest {

    @Test
    void user_test() {
        User user = User.builder()
                .id(1L)
                .marketAgree(User.YN.Y)
                .build();

    }
  

Комментарии:

1. Сделайте внутреннее статическое перечисление общедоступным для доступа извне

2. Они находятся в одном пакете, то, что они находятся в другом каталоге, не имеет значения.

3. @M.Deinum итак, несмотря main на то, что и test физически разные каталоги, Spring обрабатывает это User и UserTest имеет одно и то же имя package ( com.microservice.user.domain ) . это правильно?

4. Это не имеет ничего общего с Spring, это просто то, как работает Java. Это пакет, который учитывает не каталоги.

5. @M.Deinum верно, я был слишком одержим Spring. спасибо за ваши комментарии!