A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 姚伟涛 中级黑马   /  2012-4-18 16:27  /  1639 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. import java.awt.*;
  2. public class FramePanel extends Frame{
  3. public FramePanel(String str){
  4. super(str);
  5. }  
  6. public static void main(String args[]){
  7. FramePanel fr=new FramePanel("Frame with Panel");
  8. Panel pan=new Panel();
  9. fr.setSize(300,200);
  10. fr.setBackground(Color.blue);
  11. fr.setLayout(null);
  12. pan.setSize(100,100);
  13. pan.setBackground(color.yellow);
  14. fr.add(pan);
  15. fr.setVisible(true);
  16. }
  17. }
复制代码
运行javac 提示Class FramePanel is public, should be declared in a file name ....

7 个回复

倒序浏览
pan.setBackground(color.yellow);

fr.add(pan);
我吧这个color.yellow,变成Color,就行了,能运行出来

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
我知道你的错误了,你的java文件名是不是取得不是FramePanel,你看下,不是的话,改过来就可以了的
回复 使用道具 举报
很明显,你定义的文件名与public类的类名不一致,你需要修改文件名称为FramePanel。
希望回答的对你有帮助。
回复 使用道具 举报
定义一个类时如果没有用public 修饰 那么这个类的文件名可以是任何合法的变量名

但是一旦你的类用public修饰了,那么你这个类的文件名就必须和你定义的这个类名相同了
回复 使用道具 举报
13.pan.setBackground(color.yellow); 里面的color首字母大写。应该是Color类。

回复 使用道具 举报
褚代江 发表于 2012-4-18 16:33
pan.setBackground(color.yellow);

fr.add(pan);

pan.setBackground(Color.yellow);
color.yellow改成Color.yellow就对了
3油
回复 使用道具 举报
Color啊{:soso_e153:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马