Los métodos tienen un tipo de retorno.
scope | return type | name (parameters)
- Scope: Es el ámbito de visibilidad de la función: Puede ser public, private, protected.
- Return type: Es el tipo de dato que retornará dicho método. No hay restricciones, un método puede devolver cualquier objeto. Si no se desea que devuelva algo, se utiliza void.
- Name: Nombre del método.
- Parameters: Son los datos que recibe dicha función para realizar un determinado proceso. Nuevamente, no hay restricciones, puede recibir cualquier tipo de objeto.
Por lo tanto, la declaración del método:
public static List<Artist>
Indica que:
- Es un método público. Puede ser accedido desde cualquier ámbito de la aplicación.
- Dicho método es estático. Es decir, existe independientemente del exterior. No necesita un objeto para existir; existe a partir de que el ClassLoader cargue la clase.
- Dicho método devuelve un objeto tipo Lista que contiene objetos Artist.
La clase List en C# se define de la siguiente manera:
Donde T representa a un tipo de elemento. Ésto se llama
Generics y se usa en las listas porque cuando usamos objetos List, a menudo queremos restringir el tipo de elemento que deseamos que guarde la lista para un fácil manejo al momento de obtener la colección.
En éste caso, Artist es una clase:
public class Artist {
// properties
// methods
}
Y la lista que devuelve el método está llena de varios objetos Artist. Por ejemplo:
List
<Artist
> artistList
= new List
<Artist
>(); artistList
.Add(new Artist
("Slipknot",
"otra propiedad",
35)); ...
El método
Add de la clase List permite agregar un objeto a la colección.
Espero se haya entendido.
PD: Me equivoqué, no me di cuenta que era C# y expliqué para Java aunque he intentado convertir la explicación a C#. No sé mucho C# pero en éstos aspectos son muy parecidos con Java. Si Elektro o alguien ve algo mal pues que me corrijan ^^