Implémentation de la classe Method

This commit is contained in:
2020-11-22 15:54:02 +01:00
parent b79b8bf3f7
commit 9f089b3ef0

131
AppThinker/src/Method.java Normal file
View File

@@ -0,0 +1,131 @@
import java.util.ArrayList;
import java.util.List;
/**
* Gère une méthode.
*/
public class Method {
public static int _methodsId = 0;
private int _id;
private String _access;
private String _type;
private String _name;
private List<Argument> _arguments;
/**
* Constructeur - Crée une instance de Method.
*/
public Method(){
_methodsId++;
this._id = _methodsId;
this._access = "public";
this._type = null;
this._name = "methode" + this._id;
this._arguments = new ArrayList<Argument>();
}
/**
* Constructeur - Crée une instance de Method avec des paramètres donnés.
* @param access Le modificateur d'accès de la méthode.
* @param type Le type de la méthode.
* @param name Le nom de la méthode.
* @param arguments Les arguments de la méthode.
*/
public Method(String access, String type, String name, ArrayList<Argument> arguments){
_methodsId++;
this._id = _methodsId;
this._access = access;
this._type = type;
this._name = name;
this._arguments = arguments;
}
/**
* Récupère le numéro de la méthode.
* @return Le numéro de la méthode.
*/
public int getId() {
return _id;
}
/**
* Récupère le modificateur d'accès de la méthode.
* @return Le modificateur d'accès de la méthode.
*/
public String getAccess() {
return _access;
}
/**
* Paramètre le modificateur d'accès de la méthode.
* @param access Le modificateur d'accès de la méthode.
*/
public void setAccess(String access) {
this._access = access;
}
/**
* Récupère le type de la méthode.
* @return Le type de la méthode.
*/
public String getType() {
return _type;
}
/**
* Paramètre le type de la méthode.
* @param type Le type de la méthode.
*/
public void setType(String type) {
this._type = type;
}
/**
* Récupère le nom de la méthode.
* @return Le nom de la méthode.
*/
public String getName() {
return _name;
}
/**
* Paramètre le nom de la méthode.
* @param name Le nom de la méthode.
*/
public void setName(String name) {
this._name = name;
}
/**
* Récupère tous les arguments de la méthode.
* @return Les arguments de la méthode.
*/
public List<Argument> getArguments() {
return _arguments;
}
/**
* Ajoute un argument à la méthode.
* @param a L'argument à ajouter.
*/
public void addArgument(Argument a){
this._arguments.add(a);
}
/**
* Retire un argument de la méthode.
* @param index L'index de l'argument à retirer.
*/
public void removeArgument(int index){
this._arguments.remove(index);
}
/**
* Retire tous les arguments de la méthode.
*/
public void clearArguments(){
this._arguments.clear();
}
}