Casting To Parameterized Types And Unchecked Warnings

Jul 15, 2014

There is a sentence in JLS 7 which I can't figure it out. It says :

A cast from a type S to a parameterized type T is unchecked unless at least one of the following conditions holds:
-S <: T
-All of the type arguments (§4.5.1) of T are unbounded wildcards
-T <: S and S has no subtype X other than T where the type arguments of X are not contained in the type arguments of T.

Condition one and two I got it. But the number three is really bugging me. I write some code in order to try to understand it.

class G<X>{}
class D<T,U> extends G<T>{}
G<String> g = new G<>();
D<String, Integer> dd = (D<String, Integer>) g;

In Eclipse I got no warning but it shouldn't give one ?

Because g has others subtypes than D<String, Integer> (e.g. D<String, List> , D<String, G>)

Am I missing something about the contained type arguments ?

View Replies


ADVERTISEMENT

Casting And Interfaces - Comparing Object Of Unknown Types

Oct 15, 2014

import java.util.*;
public class CommonElements
{
private int comparisons; // number of comparisons made
private Comparable[] arrayToSearch; // current array being traversed
private Comparable[] commonElements = new Comparable[10];
private int arrayPosition = 0; //keeps track of what index to add an element to common at

[Code] ...

I have trying to get this down to the bar minimum. I am trying to cast the desired object array to a array of comparable. This is all required by the assignment.

I am getting a runtime error that I can not perform the desired cast. What do I need to provide the compiler in order to allow for this casting. I can not change the signature of the method however nothing about the class has been specified do I need to implement comparable? Also I don not now what the client is passing so how would I write a generic compareTo method to compare object of unknown types.

View Replies View Related

Compiler Warnings When Using SortedSet To Process HashMap Keys In Order

Feb 16, 2015

My objective here is to process a HashMap's key's in order. I found SortedSet as a way to do it.

The HashMap is like this:

nobelPrizeWinners = new HashMap<String, PrizeWinner[]>();
// 2009:
nobelPrizeWinners.put(new String ("2009 Physics"), new PrizeWinner[] {new PrizeWinner("Charles K.", "Kao"), new PrizeWinner("Willard S.", "Boyle"), new PrizeWinner("George S.", "Smith")});

[Code] ....

This is the method I am trying to write

public void displayAllYearsAndWinners_2()
{
// Creation of the SortedSet
SortedSet sortedSet = new TreeSet();

[Code] ....

However, the compiler gives me a warning of NobelPrizeWinners.java uses unchecked or unsafe operations. Recompile with -Xlint:unchecked for details.

As I said, my objective here is to process them in order. If this compiler warning cannot be resolved, I am open to other methods of accomplishing my objective.

View Replies View Related

Unchecked Or Unsafe Operations While Compiling Program?

Jun 30, 2014

String filename="C:UsersRajashekarDesktopfwfwdSoftware Failures1_Test.txt";//Input Files
String data;
public ArrayList<String> value=new ArrayList<String>();
public void read() throws IOException{
File f = new File(filename);

[Code] ....

View Replies View Related

Basis For Making Exception As Checked Or Unchecked

Oct 10, 2014

I know checked exception need to be checked at compile time and runtime exception need not be checked at compile time.

My question is not related to the definition.

The question is on what basis have they selected that FileNotFound exception is a checked exception and NullPointerException is an unchecked exception? Is it the random wish of the creator or is there reason behind why something is selected as checked exception and something as unchecked?

View Replies View Related

Type Class Is Not Generic - It Cannot Be Parameterized With Arguments

May 16, 2008

I have set up a project in Eclipse 3.1 and am using java 5.0 compiler.

Here's my folder structure in Eclipse

Java Code:

DFSRemoteClientTestClient.java mh_sh_highlight_all('java');
DFS is the project in Eclipse

And this is how it looks my java class

Java Code:

package RemoteClient;
import java.util.*;
// other imports
public class TestClient {
public static void main(String [] args) throws ServiceInvocationException {
// business logic here ....
}
} mh_sh_highlight_all('java');

So, basically, my java class is just a simple class with a main function.

Now when I build my project, using Project->Clean...

Then I get this as an error at the very first line where i specify the package

This is the error:

Java Code: The type Class is not generic; it cannot be parameterized with arguments <T> mh_sh_highlight_all('java');

What's this error and why am I getting this.

View Replies View Related

Using Parameterized Constructor In Servlet - What Happens In Deployment Time

May 2, 2014

If i used parameterized constructor in servlet what happens in deployment time?

View Replies View Related

Type Safety - Unchecked Cast From Object To LinkedList (EventData)

Feb 28, 2014

I am getting "Type safety: Unchecked cast from Object to LinkedList<EventData>" in eclipse for a piece of code stated below

public LinkedList<EventData> loadFromFile(File file) {
queue=new LinkedList<EventData>();
//Some piece of code
return (LinkedList<EventData>)queue.clone(); //--->getting warning here
}

I know that because clone() method is returning Object, hence compiler doesn't have type information that's why showing warning. I don't want to suppress this warning instead i want to fix it.

View Replies View Related

Casting For CompareTo

Nov 11, 2014

I am trying to compare some items from a generic arraylist with each other, but I keep getting an error stating that I need to cast the values in line 38. However, when I heed the warning and change it to what it wants, I get a warning stating "type safety: Unchecked cast from K to Comparable<K>". Should I ignore this warning or is there a better way to compare the two items? Also, is there another way for me to use compareTo w/o making my class extending/implementing comparable or is that the only way?Here is what I have:

class WordInfo<K, V extends Comparable <K>> {
private FileReader fr;
private String word;
private ArrayList<K> list;
private BufferedReader br;
private int current = 0;

[code]....

View Replies View Related

Casting Exception In Generics

Jan 29, 2014

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 ?

View Replies View Related

Implicit And Explicit Casting

Aug 21, 2014

The following code snippet will print 'true'.

short s = Short.MAX_VALUE;
char c = s;
System.out.println( c == Short.MAX_VALUE);

Correct Option is : B

A. True

B. False

Explanation:

This will not compile because a short VARIABLE can NEVER be assigned to a char without explicit casting. A short CONSTANT can be assigned to a char only if the value fits into a char.

short s = 1; byte b = s; => this will also not compile because although value is small enough to be held by a byte but the Right Hand Side i.e. s is a variable and not a constant. final short s = 1; byte b = s; => This is fine because s is a constant and the value fits into a byte. final short s = 200; byte b = s; => This is invalid because although s is a constant but the value does not fit into a byte. Implicit narrowing occurs only for byte, char, short, and int. Remember that it does not

occur for long, float, or double. So, this will not compile: int i = 129L;The below code compiles fine and contradicts what is said in bold. So what does the bold statement mean then?

Java Code: class BreakTest{
public static void main(String args[])
{
float f=1.0f;
double d=f;
}
} mh_sh_highlight_all('java');

View Replies View Related

Typing By Casting To Interface

Jun 16, 2014

I'm looking for a heuristic explanation of how to think of an "interface" as a type. I'm used to think of the 'type' of a class coming form its very definition but I often see casting to an interface which I still feel very uncomfortable about.Other than an interface, are there other unusual ways a 'type' may be referred to?

A second basic question: When you user 'super.f()', will Java go up the calling chain until it finds method 'f' (and report an err if none is found) or does it expect to find 'f' immediately at its very first parent?

View Replies View Related

String Input / Output And Casting

Oct 2, 2014

I have to create a program that uses the Scanner in String input and Output that will enable the user to convert

double -> int
int -> byte
int -> short
int -> hex-string

The output should look something like this:

Syntax: convert <value> <type>
convert 15.5 int~> 16
convert 128 byte~> -128
<type>: int, byte, short, hex, decimal
Syntax: max <type>
max byte~> 127
<type>: int, byte, short

[Code] ....

View Replies View Related

If Statement - Char To String Casting?

Aug 3, 2014

import java.io.IOException;
import java.util.*;
public class Guesser {
public static void main(String[] args) throws IOException {
 char[] alphabet = "abcdefghijklmnopqrstuvwxyz1234567890 .,:;'-".toCharArray();

[Code] .....

I'm writing a program which will take a three letter word (for now) and then try to guess the word over and over again until it finds it, then print the word and the amount of tries it took to find it.

The problem: at the moment the program will find the word but not break out of the for loop when it does. I think it doesn't like the char to String conversion somewhere along the line.

View Replies View Related

How To Apply Casting Correctly For HeightProgram

Mar 17, 2014

how to calculate the child's height in float value fixing value where if you choose male the accurate value, but if you choose female the value will be accurate too.

int heightMother, heightFather;
int heightMaleChild, heightFemaleChild;
String gender;

[code]....

View Replies View Related

JDBC :: How To Call Parameterized Stored Procedure In Jdbc

May 17, 2014

calling a parameterized stored procedure in java jdbc from sql server.The stored procedure goes like this in sql

create proc patientreg
@id int
as
begin
select [patient_id],[Psurname], [pFirstname], [pMiddlename], [reg_date], [DOB], [Sex], [Phone_num], [Addr],[Email],[dbo].[fncomputeage](DOB) from [dbo].[Patient_registration] where [patient_id] = @id
end
please note dbo.fncompute(DOB) is a function

To call it in jdbc it goes like this

try{
String str = "{call patientreg(?)}";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbcdbc:GeneralHospit al");
cstmt = con.prepareCall(str);
cstmt.setInt(1, Integer.parseInt(t.getText()));

[code]....

after doing it this way it throwing an exception: Error:java.sql.SQLException: Parameter 1 is not an OUTPUT parameter.

View Replies View Related

Servlets :: Why Session Not Type Casting Into String

Oct 17, 2014

why my session not type casting into String? I'm placing that code below where problem arised.

HttpSession hs1=request.getSession(false);
out.println("hi");
String t1=(String)hs1.getAttribute("name");
out.println("hi "+t1);

in my above code first "hi" is printed successfully but next statement arises type cast exception.

View Replies View Related

Type Casting - Getting Number With Two Decimal Places As Output?

Jun 7, 2013

"Type Casting" .... So the question is "How am I getting a number with two decimal places as output?"

import java.util.Scanner;
public class SalesTax
{
public static void main(String[] args) {
double purchase, tax;
Scanner input = new Scanner(System.in);
System.out.print("Enter purchase amount: ");
purchase = input.nextDouble();
tax = purchase * 0.06;
System.out.println("Sales Tax: $" + (int)(tax * 100) / 100.0); +//this will give two decimal places??+
}
}

View Replies View Related

Overloading With Primitive Types?

Jan 22, 2015

Why the following is happening.

For the below code, when I execute it, it prints

Short method 10 //result 1
Sub class short method 10 //result 2

Which is as expected but if I comment out line 3, then it prints

Integer method 10 //result 3
Integer method 10 //result 4

I can understand result 3 is because of an upcast from short to int, since FunWithOverloading will not have a overloaded method with short now. However, what is happening with result 4? Shouldn't it call methodA of the subclass with the argument type short? If its because I have declared the reference variable, derived, of the type FunWithOverloading, then how come the first result correctly picks the overloaded method of the sub class?

class FunWithOverloading{
void methodA(int x){System.out.println("Integer method " + x);}
void methodA(short x){System.out.println("Short method " + x);} //line 3
} class OverloadedSubClass extends FunWithOverloading{
void methodA(short x){System.out.println("Sub class short method " + x);}

[Code] ....

View Replies View Related

Initializing Arrays Of Various Types

Sep 18, 2014

For basic arrays, we can directly combine declaration and initialization as E.g: int[] num= new int[2]

But can we do this do for forming class object arrays? like

class stu
{
.....
}
stu[] s=new stu[2]
????

View Replies View Related

How To Create And Re-use Object Types

Mar 17, 2014

how objects relate to classes and how you can create and re-use object types.on that point, but this has me baffled. I most certainly do not have a firm grasp yet on passing things to and from methods that just makes my head hurt. SO anyway I tried out one of the code examples:

/* ElectricGuitar.java */
class ElectricGuitar {
String brand;
int numOfPickups;
boolean rockStarUsesIt;

[code]...

But I just realized this thing has no main method and only one class defined.....so I guess I just tried to compile.

View Replies View Related

Incompatible Types For Fname

May 6, 2014

import java.util.Scanner;
class potatoes {
public static void main(String[] args){
Scanner user = new Scanner(System.in);
String fname;
fname = user.nextLine;
String newfname = fname.substring(0, 3);
System.out.println(newfname);
}
}

This bit of code isnt working, it has something to do with incompatible types for fname

View Replies View Related

Generic Types In Java

Apr 1, 2014

I am trying to understand the concept of Generics in java. In the introduction to Generic Types, this example is given:

Java Code: public class Box {
private Object object;
public void set(Object object) { this.object = object; }
public Object get() { return object; }
} mh_sh_highlight_all('java'); "Since

Since its methods accept or return an Object, you are free to pass in whatever you want, provided that it is not one of the primitive types." - I understand this.But then it has been changed to a generic class:

Java Code: /**
* Generic version of the Box class.
* @param <T> the type of the value being boxed
*/
public class Box<T> {
// T stands for "Type"
private T t;

public void set(T t) { this.t = t; }
public T get() { return t; }
} mh_sh_highlight_all('java'); "

As you can see, all occurrences of Object are replaced by T. A type variable can be any non-primitive type you specify: any class type, any interface type, any array type, or even another type variable."We can use any type in place of an Object, because Object is a superclass of all classes. But T (or any other class) is not a superclass of all classes. So how do we justify any class being used in place of a random T or any other class?

View Replies View Related

Wrappers And Primitive Types

Feb 23, 2015

I've got a question to ask.

public class AutoBoxingExample {
public void add(Integer intVal){
System.out.println("Wrapper");
}
public void add(int value){
System.out.println("Primitive");
}
public static void main(String[] args) {
AutoBoxingExample auto = new AutoBoxingExample();
auto.add(12);
}
}

The output is "Wrapper". What would be the reason behind it?

View Replies View Related

Change Variable Types Accordingly

Mar 14, 2014

GoodEmployee is defined who has ALL the following properties:

He should be married.
He should have 2 or less than 2 children.
His middle name should start with "k" but not end with "e"
The last name should have more than 4 characters
The character "a" should appear in the last name at least two times.
The name of one of his children should be "Raja"

Write a method:

boolean isGoodEmployee( boolean isMarried, int noOfChild , String middleName , String lastName , String[] childNames);

isMarried true if the employee is married.
noOfChild the number of children of the employee.
middleName the middle name of the employee
lastName the last name of the employee.
childNames the array of the names of the children of the employee

View Replies View Related

Incompatible Types / Void Cannot Be Converted To Int

Jul 29, 2014

package input;

import javax.swing.JOptionPane;
public class Input {
public static void main(String[] args) {
int user;
user = JOptionPane.showMessageDialog(null, "Enter Your Age""); ERROR IS HERE
if(user <= 18) {
JOptionPane.showMessageDialog(null, "User is legit");
} else {
JOptionPane.showMessageDialog(null, "User is not legit");
}
}
}

I'm getting this error message :

incompatible types: void cannot be converted to int

unclosed string literal

View Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved