Обработка и выдача исключений нулевого указателя

Поэтому я использую IDE обработки и продолжаю получать это странное исключение нулевого указателя.

Исключение в потоке "main" java.lang.NullPointerException
at processing.core.PApplet.displayable (PApplet.java:9944)
at processing.core.PApplet.main (PApplet.java:7425)

это вся информация, которую я получаю, так что я даже не могу проследить, где это происходит. вот мой код

import TUIO.*;

TuioProcessing tuioClient;
Vector tuioCursorList;
Point cols[][];


void setup(){
  size(1440,900);
  tuioClient = new TuioProcessing(this);
  tuioCursorList = tuioClient.getTuioCursors();
  init();
}

void draw(){
  background(0);


}

void init(){
  cols = new Point[width][height];
  for(int i = 0; i<width;i++){
    for(int x = 0; x<height;x++){
      cols[i][x] = new Point(i,x);
    }
  }
}

class Point{

  int x, y;
  boolean alive;
  int life;
  int pointColor;

  Point(int _x, int _y){
    x = _x;
    y = _y;
    pointColor = 0;
    alive = false;
    fill(pointColor);
    point(x, y);

  }

  void checkStatus(){
    if(alive = true){
      isAlive();
    } 
    else{
      isDead();
    }
  }

  void isDead(){
    pointColor = 0;
    life = 0;
  }

  void isAlive(){
    pointColor = 255;
    life = 100;
  }

  void kill(){
    life--; 
  }

}

// called when an object is added to the scene
void addTuioObject(TuioObject tobj) {
  println("add object "+tobj.getSymbolID()+" ("+tobj.getSessionID()+") "+tobj.getX()+"     "+tobj.getY()+" "+tobj.getAngle());
}

// called when an object is removed from the scene
void removeTuioObject(TuioObject tobj) {
  println("remove object "+tobj.getSymbolID()+" ("+tobj.getSessionID()+")");
}

// called when an object is moved
void updateTuioObject (TuioObject tobj) {
  println("update object "+tobj.getSymbolID()+" ("+tobj.getSessionID()+")     "+tobj.getX()+" "+tobj.getY()+" "+tobj.getAngle()
    +" "+tobj.getMotionSpeed()+" "+tobj.getRotationSpeed()+" "+tobj.getMotionAccel()+"     "+tobj.getRotationAccel());
}


// called when a cursor is added to the scene
void addTuioCursor(TuioCursor tcur) {
  println(tcur.getX()+", "+tcur.getY());
}

// called when a cursor is moved
void updateTuioCursor (TuioCursor tcur) {
  println(tcur.getSessionID() + " - " + tcur.getX()+", "+tcur.getY());
}

// called when a cursor is removed from the scene
void removeTuioCursor(TuioCursor tcur) {
}

// called after each message bundle
// representing the end of an image frame
void refresh(TuioTime bundleTime) { 
  redraw();
}

Может ли кто-нибудь помочь мне разобраться в этой странной ошибке. Любая помощь приветствуется

1 ответ

Решение

Переименуй свой init() функция к чему-то еще. Вы эффективно переопределяете init() Функция обработки встроенных классов.

Другие вопросы по тегам