исходные файлы раскола Java - PullRequest
0 голосов
/ 06 ноября 2010

Я новичок в Java, и у меня есть два класса (класс calc и кнопка), которые мне нужно разделить на отдельные файлы, и класс calc использует кнопку класса.они оба компилируются, однако, когда я запускаю класс A, это терпит неудачу.Как я могу это сделать?

Это код для класса calc

package start; 
import javax.swing.*;  
import java.awt.event.*;  
import java.awt.Container;  
import java.awt.Insets;  
import java.awt.Dimension;  
import button.*;

public class calc {
 private button calc_buttons;

 private static void creategui(){
  JFrame window = new JFrame("hello dynamic window");

  buttons.createbuttons();
  buttons.setOpaque(false);
  window.setContentPane(buttons);
  window.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
  window.pack();
  window.setVisible(true);

 }

 static public void main(String[] args){
  creategui();
 }

}

Это код для кнопки класса

package button;

import javax.swing.*;
import java.awt.event.*;
import java.awt.Container;
import java.awt.Insets;
import java.awt.Dimension;

public class button /*extends JPanel implements ActionListener*/{

 protected static JButton button1, button2, button3, button4, button5, button6, button7;
 protected static JButton button8, button9, button_fact, button_exp, button_sqrt, button_abs;
 protected static JButton button_sin, button_cos, button_tan, button_percent, button_rcl;
 protected static JButton button_MC, button_e, button_pi, button_Mplus, button_Mminus;
 protected static JButton button_C, button_AC, button_MS, button_sign;
 protected static JButton button_plus, button_minus, button_div, button_mult, button_equal;

 static public void calc_button(){


 }

}

при компиляции я не получаюсообщения об ошибках, но когда я запускаю класс calc, я получаю это

Исключение в потоке "main" java.lang.NoClassDefFoundError: calc (неправильное имя: start / calc) в java.lang.ClassLoader.defineClass1(Собственный метод) в java.lang.ClassLoader.defineClassCond (ClassLoader.java:632) в java.lang.ClassLoader.defineClass (ClassLoader.java:616) в java.security.SecureClassLoader.defineClass (SecureClassLoader.j).java.net.URLClassLoader.defineClass (URLClassLoader.java:283) в java.net.URLClassLoader.access $ 000 (URLClassLoader.java:58) в java.net.URLClassLoader $ 1.run (URLClassLoader.java:197) в java.security.AccessController.doPrivileged (собственный метод) в java.net.URLClassLoader.findClass (URLClassLoader.java:190) в java.lang.ClassLoader.loadClass (ClassLoader.java:307) в sun.misc.Launcher $ AppClassLoader.herClass (.java: 301) at java.lang.ClassLoader.loadClass (ClassLoader.java:248)

1 Ответ

2 голосов
/ 06 ноября 2010

Перейдите на один каталог выше (в каталог, содержащий «start» и «button») и сделайте это:

java start.calc

Кстати, условно, чтобы имена классов начинались с заглавной буквы.

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