java.net member

Rechercher dans ce site

JavaFX et ses fonctions

>> 17 February 2009

Les fonctions sont une partie importante de tous les langages informatiques, JavaFX ne déroge pas à cette règle. Je vous présente ici les déclarations, définitions, et usages des fonctions dans JavaFX.

Niveaux des fonctions
Les fonctions sont des fonctions d'un script (au niveau du script) ou bien des fonctions d'instance (déclarées dans une classe). Plusieurs modificateurs sont utilisables avec des fonctions en JavaFX

Les modificateurs
Les modificateurs suivants sont applicables aux fonctions
abstract
bound
override
package
protected
public


Les fonctions d'instance

Sont des fonctions déclarées à l'intérieur d'une classe

Exemple :

package javafxapplication3;

class Personne
{
var nom: String;
function afficheNom()
{
println("Nom de la Personne : {nom}")
}

}

var p=Personne
{
nom:"Kaesar ALNIJRES";
}
p.afficheNom();



Les fonctions au niveau script

Les fonctions de scripts sont déclarées au niveau d'un script en-dehors de toutes classes

/*
* test.fx
@author: ka
*/

package javafxapplication3;


def msg="Bonjour";

function afficheMessage()
{
println("Le message est {msg}") ;
}

Utilisation

Les fonctions sans arguments et sans valeur de retour

Remarquez dans l'exemple suivant que l'utilisation de la fonction intervient avant sa définition. Il est possible d'appeler une fonction avant ou après sa définition.

Note :
La règle de nommage des fonctions et variables est exactement la même que dans Java ;
minuscule, Majuscule, Majuscule, etc.

Exemple :

/*
* test.fx
@author: ka
*/

package javafxapplication3;


def msg="Bonjour";

afficheMessage();

function afficheMessage()
{
println("Le message est {msg}") ;
}

Exemple :

Le même exemple mais la valeur de retour est déclarée explicitement comme " Void "
/*
* test.fx
@author: ka
*/

package javafxapplication3;


def msg="Bonjour";

afficheMessage();

function afficheMessage():Void
{
println("Le message est {msg}") ;
}



Des fonctions avec des paramètres

Dans l'exemple suivant, déclarer et appeler une fonction avec un paramètre. Le choix des nom des paramètres est laissé au développeur, le type doit être parmi les types disponibles dans JavaFX ; des types prédéfinis ou définis par le développeur.
Une fonction qui prend une String

Exemple :

/*
* test.fx
@author: ka
*/

package javafxapplication3;

afficheMessage("Bonjour");

function afficheMessage(chaine:String)
{
println("Argument = {chaine}") ;
}




Une fonction qui prend deux arguments de type Integer

Exemple :
Une fonction qui prend deux chiffres et ajoute les deux

/*
* test.fx
@author: ka
*/

package javafxapplication3;

function ajouter( arg1: Integer, arg2: Integer ) {
result = arg1 + arg2;
println("{arg1} + {arg2} = {result}");
}

var result;
ajouter(10,10);





Une fonction qui prend des objets d'une classe définie dans le script

/*
* test.fx
@author: ka
*/

package javafxapplication3;

class Message
{
var s: String;
}

var msg1=Message
{
s:"Bonjour";
}

var msg2=Message
{
s:"Le monde !!";
}




function afficher( arg1: Message, arg2: Message ) {

println("Le premier message = {arg1.s} et le second {arg2.s}");
}

afficher(msg1,msg2);



Des fonctions avec valeur de retour

Il suffit d'indiquer la valeur de retour après les parenthèses de la fonction, après les deux points. Si aucun valeur de retour n'est indiquée " Void " est retournée par défaut.

Exemple :

Une fonction qui prend deux Integers et retourne le résultat de l'addition des Integers.
/*
* test.fx
@author: ka
*/

package javafxapplication3;

function ajouter( arg1: Integer, arg2: Integer ): Integer {
return arg1 + arg2;

}

var result = ajouter(10,10);
println("le résultat retourné : {result}");




Note :
Utiliser le mot clé " return " pour retourner une valeur d'une fonction, n'est pas obligatoire. Par défaut le résultat de la dernière expression est retourné

Exemple :

/*
* test.fx
@author: ka
*/

package javafxapplication3;

function ajouter( arg1: Integer, arg2: Integer ): Integer {
arg1 + arg2;

}

var result = ajouter(10,10);
println("le résultat retourné : {result}");



Fonction spéciale : run

Cette fonction présente le point d'entrée de scripts. Elle reçoit les arguments passés à la ligne de commande après le nom d'un script sous forme d'une séquence " String ", comme suite :

javafx nomScript arg1 arg2

Si la fonction "run" n'est pas fourni, Les instructions à exécuter sont placées au niveau du script. Dans ce cas le compilateur va générer une fonction "run" sans arguments et placer le code à exécuter dans cette " run " d'une façon transparente pour l'utilisateur.

Note :
le noms de la séquence " args " dans l'exemple est au choix du développeur.

Exemple :

/*
* test.fx
@author: ka
*/


function run(args : String[]) {
// expressions Java utilisées dans le script
def chiffre1 = java.lang.Integer.parseInt(args[0]);
def chiffre2 = java.lang.Integer.parseInt(args[1]);

var result = ajouter(chiffre1,chiffre2);
println("le résultat retourné : {result}");
}


function ajouter( arg1: Integer, arg2: Integer ): Integer {
arg1 + arg2;

}



Passer des arguments à la ligne de commande dans NetBeans

Exemple :

package javafxapplication3;

var result;
function run(args : String[]) {
// expressions Java utilisées dans le script
def chiffre1 = java.lang.Integer.parseInt(args[0]);
def chiffre2 = java.lang.Integer.parseInt(args[1]);

result=ajouter(chiffre1,chiffre2);
println("Le résultat de 2 arguments de run = {result}");
}

function ajouter( arg1: Integer, arg2: Integer ): Integer {
arg1 + arg2;

}





Un clic droit sur le projet -> properties



Sélectionnez -> Run

  • Un clic sur " Browse " pour sélectionner " test " comme la classe principale " Main Class " (Le fichier contenant l'exemple est test.fx).
  • Dans le champ " Main Class " n'oubliez de préfixer la classe principale par le nom du package (Si la classe est définie dans un package)
  • Dans le champ " JVM arguments " Entrez le nom de la classe principale avec si besoin le nom du package -> suivi des arguments à passer au programme (ici 1 et 2)
  • Un clic sur " OK " pour valider





Exécuter le projet

Un clic droit sur le projet -> Run Project



Le résultat de l'addition des deux arguments passés à run est affiché

0 comments:

Post a Comment

  © Blogger template Simple n' Sweet by Ourblogtemplates.com 2009

Back to TOP