人造石英石变色:很菜的JAVA问题续

来源:百度文库 编辑:高考问答 时间:2024/04/29 01:28:21
这么说吧,我是想把两个文件打包装到一个文件夹里放在D盘下**文件夹里(JAVA本身在C盘programfilm里),这两个文件本身能编译,可我一加package **和import **.*;就编译不了了.
麻烦那位大虾指导一下,怎么修改原码以及javac(是不是还要设classpath?)
我都整了两天了,郁闷死我了.

这两个文件原码在这呢,文件已经可以编译了
import javax.swing.*;
import java.awt.*;

public class SimpleFrame extends JFrame
{
public SimpleFrame(int width,int height)
{
setSize(width,height);
setTitle("Frame主窗体");
Toolkit kit=Toolkit.getDefaultToolkit();
Dimension screenSize=kit.getScreenSize();
int x=(screenSize.width-width)/2;
int y=(screenSize.height-height)/2;
setLocation(x,y);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

public static void main(String args[])
{
SimpleFrame frame=new SimpleFrame(400,300);
frame.setVisible(true);
}
}

import java.awt.*;
import java.io.*;
import javax.swing.*;
import javax.imageio.*;
import java.net.*;

public class PanelFrame extends SimpleFrame
{
public PanelFrame(int width,int height)
{
super(width,height);
}

public static void main(String args[])
{
PanelFrame frame=new PanelFrame(300,200);
ContentPanel contentPanel=new ContentPanel();
contentPanel.add(new JButton("ok"));
frame.setContentPane(contentPanel);
frame.setVisible(true);
}
}

class ContentPanel extends JPanel
{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.drawOval(120,60,150,70);
try
{
g.drawString("这是一个面板!",160,100);
Image image=ImageIO.read(new URL(urlname));
g.drawImage(image,30,30,null);
}
catch(IOException e)
{
g.drawString("加载图片失败!",30,100);
}
}
String urlname="http://www.liu-yi.net/HTML/IMAGE/stamp_yi.JPG";
}
原码长了点,不过跟问题好象没什么关系,哪位大虾好心看一下哈.
其实如果把这两个文件放到d;\**目录下,然后就直接在此目录下编译也行.
那样的话如果其他代码用了SimpleFrame类不就必须放到这个类所在的文件夹里才能编译了么.我就是作了一些练习存在一个文件夹里了,可是我发现文件夹里的CLASS文件越来越多,如果想分多个文件夹,每次都得先创建一个文件夹然后把原码文件放到里面在此文件夹路径下编译.而且同一那些使用频率高的CLASS还得分别复制.是不是里可以把这些使用频率高的CLASS打包啊?是不是还得在环境变量那加CLASSPATH啊?烦请指教一下.(就假设SimpleFrame类就是使用频率高的类,需要打包,而且放到d:\**路径下,PanelFrame类需要引用S类,该怎么做呢?)

你的代码是没有任何问题的,
我给你个建议你看合适不啊!
你去安装个ECLIPSE

把错误代码和编译命令贴出来看看啊!