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

Это мой код:

static class Developer
{
String Name;
String Language;
int Years;
int Age;


void Company ()
{
  System.out.println (Name + " Codes in " + Language + " & has " + Years +
          " Years of experience" + ", He is " + Age + " Old");
}

public Developer ()
{
  System.out.println ("Hello");
}

public Developer (String Name, String Language, int Years, int Age)
{
  this ();
  this.Name = Name;
  this.Language = Language;
  this.Years = Years;
  this.Age = Age;
}


class Analyst extends Developer
{
  public Analyst (String Name, String Language, int Years, int Age)
  {
super (Name, Language, Years, Age);
  }
}
} 

public static void main (String[]args)
{

Developer d1 = new Developer ();
d1.Name = "John";
d1.Language = "Java";
d1.Years = 2;
d1.Age = 22;

Developer d2 = new Developer ("Doe", "C++", 3, 23);

d1.Company ();
d2.Company ();

Analyst A1 = new Analyst ("Doe", "C++", 3, 23);
A1.Company ();
  }
}

Получение следующей ошибки:

Main.java:58: error: cannot find symbol
   Analyst A1 = new Analyst("Doe","C++",3,23);
   ^
    symbol:   class Analyst
   location: class Main
   Main.java:58: error: cannot find symbol
   Analyst A1 = new Analyst("Doe","C++",3,23);
                 ^
  symbol:   class Analyst
  location: class Main
  2 errors
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
93
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

public class Developer
{
String Name;
String Language;
int Years;
int Age;


void Company ()
{
  System.out.println (Name + " Codes in " + Language + " & has " + Years +
          " Years of experience" + ", He is " + Age + " Old");
}

public Developer ()
{
  System.out.println ("Hello");
}

public Developer (String Name, String Language, int Years, int Age)
{
  this ();
  this.Name = Name;
  this.Language = Language;
  this.Years = Years;
  this.Age = Age;
}
 }





 public class Analyst extends Developer {
      
    public Analyst (String Name, String Language, int Years, int Age){
        super (Name, Language, Years, Age);
      }
    
    public static void main (String[]args){
    
    Developer d1 = new Developer ();
    d1.Name = "John";
    d1.Language = "Java";
    d1.Years = 2;
    d1.Age = 22;
    
    Developer d2 = new Developer ("Doe", "C++", 3, 23);
    
    d1.Company ();
    d2.Company ();
    
    Analyst A1 = new Analyst ("Doe", "C++", 3, 23);
    A1.Company ();
      }

    }

Пробовал выше, все еще получаю эту ошибку

Krish_talks 25.12.2020 15:52

oops.java:57: ошибка: не удается найти символ Developer A1 = new Analyst ("Doe", "C++", 3, 23); ^ символ: class Analyst расположение: класс oops 1 ошибка ошибка: компиляция не удалась

Krish_talks 25.12.2020 15:52
Ответ принят как подходящий

Вы не можете использовать ключевое слово static с классом, если только он не является внутренним классом. static внутренний класс — это вложенный класс, который является static членом внешнего класса.

public class Outer {
   static class InnerStaticClass {
      public void example() {
         System.out.println("This is static nested class");
      }
   }
   public static void main(String args[]) {
      Outer.InnerStaticClass nestedClass = new Outer.InnerStaticClass();
      nestedClass.example();
   }
}

Другие вопросы по теме