Нет доступного экземпляра типа
Я написал эту программу интерфейса Java в Eclipse, но есть красная строка под MyTriangle tmp = new MyTriangle (); и когда я запускаю программу, я получаю эту ошибку:
Нет доступного экземпляра типа Question1. Должен квалифицировать выделение с помощью экземпляра типа Question1 (egxnew A (), где x является экземпляром Question1).
public static void main(String[] args) { MyTriangle tmp = new MyTriangle(); tmp.getSides(); System.out.println(); System.out.println("The area of the triangle is " + tmp.computeArea()); } interface Triangle { public void triangle(); public void iniTriangle(int side1, int side2, int side3); public void setSides(int side1, int side2, int side3); public void getSides(); public String typeOfTriangle(); public double computeArea(); } class MyTriangle implements Triangle { private int side1,side2,side3; public void triangle() { this.side1 = 3; this.side2 = 4; this.side3 = 5; } }
- Как вы реализуете FileObserver из службы Android
- Вам нужно сохранить высокий балл для Android-игры
- Android: навигационная панель для всех видов деятельности
- Как выполнить веб-запрос в своем streamе?
- 2-мерный список массивов
- Что является самым элегантным способом конвертировать дефисное слово (например, «делать что-то») в более низкое изменение верблюжьего случая (например, «doSomeStuff»)?
- Расчет пересечений между сегментами линии
- Упреждающий базовый аут с HttpUrlConnection?
- ListView random IndexOutOfBoundsException на Froyo
- Невозможно создать следующие classы: - android.support.v7.widget.Toolbar
- Когда / почему вызывать System.out.flush () в Java
- Как получить выбранный индекс RadioGroup в Android
- Свойство Java «user.dir» - что именно это означает?
Попробуй это. Удалены методы для простоты
public class Test1 { public static void main( String [] args) { MyTriangle h1 = new MyTriangle(); } } class MyTriangle implements Triangle{ int side1; int side2; int side3; public MyTriangle(){ this.side1 = 1; this.side2 = 2; this.side3 = 3; } } interface Triangle{}
Вы не ввели свой полный код, я предполагаю, что ваш код должен выглядеть примерно так.
Затем вы должны создать экземпляр для вашего основного classа, прежде чем создавать экземпляр для вашего треугольника, как показано ниже.
public class Test{ class MyTriangle { int side1,side2,side3; public MyTriangle() { this.side1 = 3; this.side2 = 4; this.side3 = 5; } } public static void main(String[] args) { MyTriangle h1 = new Test(). new MyTriangle(); // Fix is here** } } interface Triangle{}
MyTriangle
– нестатический внутренний class. Это означает, что, как и все другие члены экземпляра, он (и его экземпляр) относится к экземпляру внешнего classа, а не к самому classу. Не забывайте принадлежать к classу, вещи должны быть определены как static
.
Следовательно, вам необходимо предоставить экземпляр внешнего classа для создания внутреннего экземпляра как
new OuterClass().new MyTriangle();
Если вы пометите внутренний static
class, который делает его вложенным, он позволит вам ссылаться на него в статическом контексте, таком как public static main()
.