当前位置:  技术问答>java相关

刚开始学java就遇到一个问题,各位帮忙看看了,欧真苯!

    来源: 互联网  发布时间:2015-04-09

    本文导语:  我用一个list控件,现想对他进行操作,但老是不成功,提示null pointer exception! 不知道什么地方错误,我创建了对象了。 源码如下: import java.awt.*;   public class order extends java.applet.Applet  {    public void init()   ...

我用一个list控件,现想对他进行操作,但老是不成功,提示null pointer exception!
不知道什么地方错误,我创建了对象了。
源码如下:
import java.awt.*;
 
public class order extends java.applet.Applet
 {
   public void init()
   {  List ProductList=new List(4,false);
      ProductList.addItem("Oscar");
      ProductList.addItem("Lionhead");
      ProductList.addItem("Jack Dempsey");
      ProductList.addItem("Angelfish");
      
      add(ProductList);
      ......
      ......      
      resetValues();
    }
    
    public void resetValues(){
      SubTotalLabel.setText("$0.0");
      TotalLabel.setText("$0.0");
      AmountLabel.setText("$0.0");
      PricePerItemLabel.setText("$0.0");
      
      ProductList.select(1);           **xxxxxxxxxxxxxxxxxxxxxx**
      SizeChoice.select(1);
      OrderAmountSlider.setValue(0);
      
      NameEntryField.setText("");
      StreetEntryField.setText("");
      CityEntryField.setText("");
      ZipEntryField.setText("");
    }
    
    public boolean handleEvent(Event InEvent)
    {
      if(InEvent.id==Event.SCROLL_LINE_UP||InEvent.id==Event.SCROLL_LINE_DOWN){ 
         updateValues();
      }else  
      if(InEvent.target==ProductList){
         updateValues();
      }else
      if(InEvent.target==ClearButton){
         resetValues();
      }else
      if(InEvent.target==QuitButton){
           //Alabel.setText("Quit Button");
      }else
      if(InEvent.target==SubmitButton){
           //Alabel.setText("Submit Button");
      }      
      return super.handleEvent(InEvent);
    }
    
    public boolean action(Event InEvent,Object SomeObject){
     if(InEvent.target==SizeChoice){
        updateValues();
        return true;
     }else
     if(InEvent.target==NameEntryField){
        return true;
     }else
      return false;
    }  

    private void updateValues(){
       。。。。。。。
       。。。。。。。   
    }
 }

打杈的地方报错!

|
我看是你的程序错了,你已经声明了一个私有的全局变量ProductList:
              private  List  ProductList;
        
然后在init方法理由声明了一个同名的ProductList对象:
              List  ProductList=new  List(4,false);
              ProductList.addItem("Oscar");
              ProductList.addItem("Lionhead");
              ProductList.addItem("Jack  Dempsey");
              ProductList.addItem("Angelfish");
              ProductList.select(1);
              add(ProductList);
那么当init方法结束后,Applet的面板上应该有一个List对象,就是你看到的那个,但这个对象不是你声明的私有变量ProductList, 这时这个ProductList应该是null,那么在以后的其他方法中如果用到这个变量就会抛出空指针异常。

(我没有实际运行你的程序,也许会有不准确的地方)

|
用ProductList.getItem(ProductList.getSelectedIndexes());

|
好像是jdk1.0的事件处理模型的兼容问题(action())
怎么不用新事件模型?
就是somecomponent.add***listener()
处理事件用对应的方法。


|
看不懂,怎么没接口?

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 想看看linux的内核源代码!从哪里开始!给点建议!!
  • linux下装过qmail服务器的进来看看,刚开始安装就出问题了!!郁闷哦!
  • 进来看看,怎样监控一个程序开始运行的消息?
  • 08048000 是加载动态库的开始地址,还是程序开始运行的地址
  • 想开始学习Linux下的C++编程,不知道如何开始?
  • 今天开始开始学习LINUX,庆祝一下!
  • 如何开始学习JAVA
  • a如何从0开始
  • 我叛变了,开始学java了,希望大家多多关照!!
  • 学UNIX从SOC UNIX开始好吗?
  • pwd查看工作目录是从home/开始一直到当前文件么?
  • NOSQL iis7站长之家
  • 不知道是继续vb6还是及时开始.net又或者是钻研java呢?
  • 我今天开始学习java 请问 J2EE 怎么用
  • 新的开始。。。新的希望。。。
  • linux 纯C编程从哪里开始
  • 在程序的开始部份这样处理的含义是什么呀
  • Mysql auto_increment 重新计数(让id从1开始)
  • 今天开始学习JAVA,望各位高手指教一二
  • 各位大虾,一个初学者该怎样开始学习java?
  • 如何开始...
  • JAVA考级我需要现在开始学什么?
  • 请问java用什么工具编写?在哪里运行?我刚开始学,不太懂,谢谢了


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3