java 抛出异常
public class MyFrame extends JFrame implements KeyListener { private List<BackGround> allBG=new ArrayList<BackGround>(); private BackGround nowBG; public MyFrame(){ this.setTitle(""); this.setSize(900, 600); int width=Toolkit.getDefaultToolkit().getScreenSize().width; int height=Toolkit.getDefaultToolkit().getScreenSize().height; this.setLocation(200, 100); this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.setVisible(true); this.setResizable(false); //初始化全部的图片 StaticValue.init(); //创建所有的场景 for(int i=1;i<=3;i++) {this.allBG.add(new BackGround(i,i==3? ));} //将第一个场景设置为当前场景 this.nowBG=this.allBG.get(0); } public void paint(Graphics g) { //建立一张临时的缓冲图片 BufferedImage image=new BufferedImage(900,600,BufferedImage.TYPE_3BYTE_BGR); Graphics g2=image.getGraphics(); //绘制背景图片 g2.drawImage(this.nowBG.getBgImage(), 0, 0, this); //把缓冲图片绘制到窗体中 g.drawImage(image,0,0,this);} 运行程序后 窗口显示了我的当前背景图片 但是抛出这样的异常 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at test.MyFrame.paint(MyFrame. )问题出在这g2.drawImage(this.nowBG.getBgImage(), 0, 0, this);
你吧this.nowBG.getBgImage()赋给一个临时变量, 打印出来看看他是什么? 是不是NULL 如果是很有可能是你当前没有定义背景造成的
答:得编程语言中最让人不解的部分就是它能够创建错误。当时对Java语言中的throw关键字的第一反应就是“啊,这也太傻了,为什么我们想要引发一个错误(error)?...详情>>
问:如何查看自己的积分有效期?怎么样能查讯自己的积分是从何时记起的?
答:爱问的积分是长期有效的,不设有效期限的. 如果是新浪积分,那是有一年的时间限制的. 具体参看新浪公告: 为了您更好地使用新浪积分,积分有效期规则调整。由原来年底...详情>>
答:用QQ千里眼.^0^ QQ千里眼是利用手机关注别人上,下线等情况的工具,包括隐身,使用千里眼也能知道.而显示一只眼是会员密友,就是在自己隐身的条件下,能让某些人...详情>>