의 속성이나 메서드에 액세스 할 수 없습니다 내 전체 디버깅 오류 :AS3 : 널 객체 참조 여기에
Car initiated: [object MovieClip]
Wheel initiated: [object MovieClip]
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at com.George.MegaAmazingApp.Components::Wheel/clickHandler()[C:\Documents and Settings\reithg\My Documents\Classes\com\George\MegaAmazingApp\Components\Wheel.as:24]
[UnloadSWF] GeorgesMegaAmazingApp.swf
Test Movie terminated.
Car.as :
package com.George.MegaAmazingApp.Components
{
import flash.display.MovieClip;
public class Car extends MovieClip
{
public var carObj:MovieClip;
public function Car(carObj:MovieClip)
{
trace("Car initiated: " + carObj)
this.carObj = carObj;
}
public function Accelerate(speed:Number)
{
carObj.y -= speed;
}
}
}
Wheel.as
package com.George.MegaAmazingApp.Components
{
import flash.display.Stage;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.MovieClip;
public class Wheel extends Car
{
public var rotated:Number;
public var wheelObj:MovieClip;
public function Wheel(wheelObj:MovieClip, carObj:MovieClip)
{
super(carObj);
this.carObj = carObj;
this.wheelObj = wheelObj;
trace("Wheel initiated: " + wheelObj);
wheelObj.addEventListener(MouseEvent.CLICK, clickHandler);
}
private function clickHandler(event:MouseEvent):void
{
stage.addEventListener(Event.ENTER_FRAME, super.Accelerate(2));
}
}
}
및 시작하는 SWF 그것 :
import com.George.MegaAmazingApp.Components.*;
var wheelObj:Wheel = new Wheel(this.wheel,this.car);
누구나 무슨 일인가?
Wheel extends Car? 나는 내 머리 속에서 운전하는 이상한 것들을 안다. 어쨌든, 그것은 'null'인 carObj입니다. 그러나 당신이 제공 한 코드에서 아무 것도 인스턴스화 된 것을 볼 수는 없습니다 ... – RIAstar
휠은 실제로 스티어링 휠이며 자동차의 리모컨으로 작동합니다. carObj는'this.car' 여야합니다. (저는 OOP에 익숙하지 않아서 제가 모르는 뭔가를 놓쳤을 가능성이 있습니다. 새로운 몇 시간 만에 새로운 것입니다.) –
그렇습니다. 그러나'this.car'가 어디에서 인스턴스화 되었습니까? 분명히 'null'이기 때문입니다. – RIAstar