I have searched for hours, but I did not found a solution:
I want to implement a Scala class that extends a Java class that has different constructors:
The Java class (JGoodies):
public abstract class AbstractTableAdapter<E>
extends AbstractTableModel implements ListModelBindable
The constructors:
AbstractTableAdapter()
AbstractTableAdapter(ListModel listModel)
AbstractTableAdapter(String... columnNames)
AbstractTableAdapter(ListModel listModel, String... columnNames)
The ListModel is a generic interface if that matters:
public interface ListModel<E>
I tried in Scala 2.11:
class LibraryListTableModel(listModel: SelectionInList[Book], columnNames: Array[String]) extends AbstractTableAdapter[Book](listModel, columnNames) {
def this() = this(null, null)
def this(listModel: SelectionInList[Book]) = this(null, null)
def this(columnNames: Array[String]) = this(null, null)
}
but that gives this error message:
error: overloaded method constructor AbstractTableAdapter with alternatives:
[INFO] (x$1: javax.swing.ListModel[_],x$2: String*)com.jgoodies.binding.adapter.AbstractTableAdapter[eu.eyan.idakonyvtar.model.Book] <and>
[INFO] (x$1: String*)com.jgoodies.binding.adapter.AbstractTableAdapter[eu.eyan.idakonyvtar.model.Book]
[INFO] cannot be applied to (com.jgoodies.binding.list.SelectionInList[eu.eyan.idakonyvtar.model.Book], Array[String])
[INFO] extends AbstractTableAdapter[Book](listModel, columnNames) {
[INFO] ^
[ERROR] one error found
I think the String... causes the problem..
Is it possible to extend such an abstract class?
Thanks:
András