Set<? super TreeMap> s = new HashSet<SortedMap>();
SortedMap<String,String> sm = new TreeMap<String,String>();
TreeMap<String,String> tm = new TreeMap<String,String>();
s.add(sm); //This fails
s.add(tm);
Why does adding sorted map to a Set that allows ? super TreeMap and instantiated as such fail?
public static <E extends Comparable<E>> void sort(E[] list... mh_sh_highlight_all('java');
Comparable is an interface and from how i look at this piece of code is that I can only use a class that implements the Comparable interface; however, this is the context my book uses when explaining the following code
First, it specifies that E is a subtype of Comparable.
Second, it specifies that the elements to be compared are of the E type as well.
I'm working with Doubly Linked Lists and using Java Generics..
My nodes looks like this: class DNode<E> { DNode<E> previous; DNode<E> next; E element;
//and all methods inside }
My list of Nodes looks like this: class DLL<E>{ private DNode<E> head; private DNode<E> tail; private int size;
[code]....
As you can see, as arguments they get "E o"...I need to write a program, which from the main function asks the users how long is the list, and after they type it's length, I ask them to start typing the elements (integers)...and this is how my main method is written, but I can't seem to make it work, specialy when I call the "insLast" method,I guess it's because the arguments i'm giving to the function...how to read the elements and write them into the list?
public static void main(String[] args) throws IOException { DLL<Integer> lista=new DLL<Integer>(); BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in)); String s = stdin.readLine(); int N = Integer.parseInt(s); s = stdin.readLine(); String[] pomniza = s.split(" "); for (int i = 0; i < N; i++) { lista.instLast(Integer.parseInt(pomniza[i])); }
i am interested to add integer objects and String objects into any collection object ..... while iterating the collection object i am not interested to do any type cast in java
I want to make an application and must use strategy pattern my idea is to create a super class in this case Movie Player and three sub classer and they'll komminesera with each other using strattegy pattern, one of the sub classes is Button Panel and I want to add it to Movie Player and it was to be its child,so how can I add the butt panel to Movie Player and it shall be its children?
what does super(); do in the following method, I understand its uses to access variables belonging to the superclass but i am unsure of what that one line does. Here is a sample constructor..
public CreditCard() { // fill in the default constructor and use the super call super(); id = "000000"; year = 0; }
I have studied that Generics are used to shift the Class Cast Exception into Compile time errors , So that we get errors at compile time error and we do correct them before executing ,but Here is a program in which i am getting Class Cast Exception
class Animal { } class Dog extends Animal { } class Cat extends Animal
[code]..
Getting Exception at line no 29 which i know why it occurs but just wanna ask that isn't it should be caught at compile time According to Generics ?
public int[] allIndicesOf(E itemSought) { ArrayList<Integer> toUse = new ArrayList<>(); for (E anArray : container) { if (anArray.equals(itemSought)) { toUse.add(container.indexOf(itemSought));
[Code] ....
I have an array list of strings. I want to be able to return an array of integers telling me which indexes in the string array list contain the itemSought object.
I created a superclass Ships and under that a class CivilShips. Under that HumanBulkFreighter.
I declared variables in Ships and CivilShips and wanted to have them set in HBF to a specific value. When I know try to compile them I get the following:
The super keyword when used explicitly in a subclass constructor must be the first statement but what about if i have a this(parameters) statements ? As the this one must also be the first statement... Does this means that i can have only one or the other ? What about when the super constructor is not explicit (aka implicit ) , can i use the this( parameters) in the same constructor ?
Its written that every constructor calls its super class constructor. And we know, constructors are called to create an object. Does it mean that if I am creating an object of a class, I am actually creating objects of all its super class???
how to get access from variables in a super class or a subclass. Here is what I got:
1) I have a super class that is in Jar file, I created a link in Eclipse, I know that the link is created correctly, I am going to concentrate just in one variable, so I don’t have to put all the code here firstName; in the super class(the one that is define in the path)
public class CommissionEmployee { // Field descriptor #6 Ljava/lang/String; private java.lang.String firstName;
I am creating a set of 3 subclasses, 1 superclass, and an application. In my instructions it says to make set methods in my super and subclass by using dialog boxes. In the application you have 3 different arrays where you create objects and are supposed to call the methods from the subclasses to be used in the application. I don't know how to make the dialog boxes from my subclasses to show up in my application.
Why java uses the keyword extends when setting the bound of a type parameter(Generic) to an interface. I think using the keyword implements is more intuitive.
public static <T extends Comparable<T>>
why use extends? and not implements.
int countGreaterThan(T[] anArray, T elem) { int count = 0; for (T e : anArray) if (e.compareTo(elem) > 0) ++count; return count; }
I know if I want to set multiple bounds I will use extends keyword, and I will concatenate the bounds using & operator.
Is this a design decision to always use extends keyword to set bounds?
I've an interface with generic methods in it. I would like to have specialized methods in the sub types. While doing that I'm seeing the following warnings in eclipse.
class Sorter { <E> void sort(E[] elements); };
class StringSorter {
// This gives me a warning 'hiding' to 'sort' <String> void sort(String[] elements) { }
// Gives me an error "The method someCrap(String[]) in the type StringSorter is not applicable for the arguments (String[])" void someCrap(String[] elements) { } };
I would like to understand why eclipse gives the above warnings and errors.
I'm writing a simple program in which I have a super class Person, inherited by the subclasses Customer and Employee (they inherit the variables ID, name and surname).
Java Code:
public class Person { int id; String name; String surname; public Person () {
[Code] .....
However the problem is here: when I try to get the variables ID, name and surname through my main class, they fail to return (0,null,null). Why is this? I have get-Methods in my subclasses which should return the super variables, but they are not.
Java Code:
public String getUser() { return username; }
public String getName() { return super.name; } mh_sh_highlight_all('java');
I am trying to make a generic method that will replace the data type T with those number types usable with a Scanner object. However, whenever I try to compile, I get errors saying that a Byte/Integer/Double etc are found when only a type T is allowed. This is the beginning of my method. I can;t understand what is wrong with it.
Java Code:
public <T extends Number> T nextRanged(T lowerBound, T upperBound, boolean inclusive, String errorMessage){ // Holds program execution until user inputs a numeric value between the bounds. Prevents all other input without exception. // Output data type determined by the type of the bounds. T input = null; try{ if(input instanceof Byte){ input = new Byte(internalScanner.nextByte());
[Code] ....
The purpose of the method, in the end, will be to provide the nextXXX() functionality of a Scanner object but with built in validation procedures. I could easily do this by making a nextIntRanged(), nextDoubleRanged() etc methods, but this seems wasteful to me.
I meant "incompatible type errors"!
Error example:
ValidatedScanner.java:57: error: incompatible types input = new Byte(internalScanner.nextByte()); ^ required: T found: Byte
where T is a type-variable:
T extends Number declared in method <T>nextRanged(T,T,boolean,String)
I am trying to make a ChessBoard class composed of an array of JLabels inside a JPanel with a grid layout. I am also trying to override the getPreferredSize method so that the board will change size when I resize the main window (in another class in which I will instancize this class as part of a larger GUI). I got this kind of layout working before, but now I am trying to get it to work with multiple classes. However, after copying in the part of the previous code corresponding to the panel's layout, I am encountering some errors that I don't know how to solve. Specifically, when I try to override the getPreferredSize method, the compiler tells me "method does not override or implement a method from a super type, " and that it can't find the method "getPreferredSize"
Here's my code:
public class ChessBoard extends JPanel//the panel that this class extends is the boardHousing { //mental chess board piece array Piece mentalBoard[][] = new Piece[8][8]; //actual GUI chessboard JLabel Array static JLabel chessBoard[][] = new JLabel[8][8];
[Code] ....
I would just think that I was overriding the method incorrectly, but the weird thing is that I got that specific section of code to work before -- the only thing different now is that there are multiple classes, so my ChessBoard class itself is extending JPanel.