Ich habe 2 Klassen, mit den Namen Class1
und Class2
. Wie würde ich eine Funktion von Class1
in Class2
verwenden?Wie verwendet man Funktionen aus verschiedenen Klassen in Action Script 3
Antwort
Es gibt viele verschiedene Möglichkeiten, dies zu tun.
Anruf Verfahren direkt auf einer Klasse
Class1
class Class1{
public function Class1(){
var class2:Class2 = new Class2(); //create a new Class2 object
class2.CallMe(); //call the CallMe function on Class2, note the . to indicate CallMe is a property of Class2
}
}
Class2
class Class2{
public function Class2(){ //class 2 constructor. This is always called when you create a new Object()
}
public function CallMe():void{ //note this function is public
trace("I'm class 2");
}
}
eine ref von einer anderen Klasse an eine Funktion
Class1
class Class1{
public function Class1(){
var class2:Class2 = new Class2(this.CallBack); //create a new Class2 object
//note I didn't add() to the end of CallBack, I just used the function name
}
private function CallBack(aString:String):void{ //note we can use private here
trace(aString) //I'm from Class2
}
}
Class2
class Class2{
public function Class2(aFunction:Function){ //class 2 constructor. Here we an accept the function
aFunction("I'm from Class2"); //note I can pass a string back to class1
}
}
Sie auch Klassen und Call-Methoden, die auf der Superklasse
Class1 verlängern
class Class1 extends Class2{
public function Class1(){
super.CallFromClass(); //I'm super
}
}
Class2
class Class2{
public function Class1(){
}
public function CallFromClass():void{
trace("I'm super");
}
}
unter diesem Link Werfen Sie einen Blick für weitere r eading: http://www.adobe.com/devnet/actionscript/articles/oop_as3.html
Um eine Funktion aus einer Klasse zu nutzen, müssen Sie eine Instanz davon über das new
Schlüsselwort erstellen (es sei denn, die Funktion static
ist). Diese Instanz könnte innerhalb Class2 erstellt werden:
public class Class2
{
// The property holding your instance is defined here so you can access
// it within any method of this class, as this is defined at class-level
// rather than within a function (like the constructor).
private var class1:Class1;
/**
* Class2's constructor.
* (Called automatically when an instance of Class2 is created).
*/
public function Class2()
{
// Create an instance of Class1 and assign it to the class-level
// property "class1" (defined above).
class1 = new Class1();
// You can call methods of Class1 now, via class1.
class1.someMethod();
}
}
// Main.as
package {
public class Main() {
public function Main() {
}
public function hello():void {
trace("Hello from class Main"):
}
}
}
//Hi.as
package {
public class Hi() {
private var _main:Main;
public function Hi() {
}
public function fromMain():void {
_main = new Main(); //initialize an object of class Main()
_main.hello(); //call methods
}
}
}
können Sie die function/property
von Class2
von Class1
nennen, wenn das function/property
'sichtbar' für Class1
ist. Der Zugriff auf Eigenschaften/Methoden der Klasse wird durch ein bestimmtes Attribut gesteuert, das folgende Werte haben kann: internal (default),private,public,protected,...
Überprüfen Sie this.
Dann, wenn es ‚sichtbar‘ ist, alles, was Sie brauchen, ist Bezug auf die Klasse haben (für den Zugriff static
Eigenschaften/Methoden) oder Instanz der Klasse (für den Zugriff non-static
Eigenschaften/Methoden).
- 1. Organisation von Klassen in Action Script 3
- 2. Hinzufügen eines Tastenhörers in Action Script 3
- 3. Gibt es in Action Script 3 sowas wie printf?
- 4. Wie verwendet man Klassen aus .jar-Dateien?
- 5. Effektives Teilen von JSPs zwischen verschiedenen Struts-Action-Klassen
- 6. Action Script Beratung benötigt!
- 7. LINQ Werte aus verschiedenen Klassen
- 8. Wie verwendet man Arrays in VBA-Funktionen?
- 9. Wie verwendet man DLookup Kriterien aus verschiedenen Tabellen in Access
- 10. Action Script 3.0 Punktezähler
- 11. Wie man verschiedenen Funktionen mit OpenMP
- 12. Wie Mate-Hörer mit Action Script
- 13. Wie man es6 Klassen in verschiedenen Dateien richtig verwendet, indem man sie in Meteor importiert?
- 14. Boolesche Probleme aus verschiedenen Klassen
- 15. Aufruf Methode aus verschiedenen Klassen
- 16. Cal-Funktionen desselben Namens aus verschiedenen Dateien
- 17. Action Script 3.0 vorladen bar
- 18. Warum verwendet die Tickette-App aus dem Buch Rails 3 in Action Sinatra?
- 19. Wie teile ich Daten in verschiedenen Klassen
- 20. Ändern von JavaFX gui aus verschiedenen Thread in verschiedenen Klassen
- 21. Wie verwendet man Wordpress PHP-Funktionen in Javascript?
- 22. Klassen und Funktionen
- 23. Eingabetaste Weiter zum nächsten Frame in Flash CS3 und Action Script 3
- 24. Zugriff auf Funktionen verschiedener Klassen
- 25. QT5.6 Wie verwendet man neue Dock-Funktionen?
- 26. PHP Autoload-Klassen aus verschiedenen Verzeichnissen
- 27. Jquery: Funktionen aus verschiedenen Dokumenten aufrufen
- 28. Google Maps: Erstelle Marker aus verschiedenen Klassen
- 29. Speicherbelegung in verschiedenen Funktionen?
- 30. Karte von Methoden aus verschiedenen Klassen in C++
Mehr Code wäre hilfreich, versuchen Sie einfach, AS3 zu lernen? Wahrscheinlich möchten Sie, dass Klasse2 'Klasse1' erweitert, aber ich müsste mehr darüber verstehen, was sie wirklich tun. – zzzzBov
Lol! Alter, lerne etwas OOP! Aber ich denke, du musst wissen, was OOP ist zuerst :))))) –