How do I return a userdefined classtype (other than Object) in a get-method It is easy in java, but in V J#
public class WhatEver {
private MyClass myClass;
public WhatEver() {
myClass = new MyClass();
}
public MyClass getMyClass() {
return myClass;
}
}

Return a class in a get-method
Benjamin Bruno
The code is...
/**
* Get Card at i'th possition in deck.
*/
public Card getCard(int i) {return deck.get(i);
}
I use the following method. It works fine in DrJava with java 1.5 (5.0 whatever), but I get the this error:
Error 1 The type 'Object' cannot be returned as a 'Poker.Card'
Error 2 Method 'Poker.AbstractPlayer.getCard' must return a value
I have declared deck as a LinkedList.
In java 1.5 I use the constructor LinkedList deck = new LinkedList<Card>() which obviously does
not work in VJ#. Might the error occur because deck doesn't have a type If so, how do I declare a List of type Card
Thanks.
McPlot
The above code works perfectly fine in VJ# 2005. Did you see any problem with above code If so please provide the exact error message and full code.
Thanks,
JSkinner
nano2k
I guess, return type of deck.get(i) is Object and not Card type, hence the error.
try
public Card getCard(int i) {
return (Card) deck.get(i);
}
Please System.Collections.Generic.LinkedList<T> package for generic LinkedList class for .NET
saarar
System.Collections.Generic.List<T> is the equivalent class of java.util.ArrayList<E> in JDK1.5.
Windows Genuine Advantage Notifi
You might misunderstand Ramakrishna's reply. For example, new System.Collections.Generic.LinkedList().get_First().get_Value() always returns T object.
Be notice the following.
You need to rewrite your code or implement generic version of java.util.LinkedList in C# because Visual J# doesn’t support to create generic classes yet.
Sekhar Mantrala
Eric D Greene
Yes, it is there in J# 2.0.
Refer java.util.ArrayList --> jdk 1.1 equivalent
Refer System.Collections.ArrayList --> for .Net.
If you are using any of the Visual Studio 8.0 SKUs then you can find list of classes that are availble for project from Object Browser. To view Object Browser, click on View --> "Object Browser" then select "All Componets" scope for Browse drop down.