<< Chapter < Page Chapter >> Page >
Figure 6 - Question 11.
5

Answer 11

Question 12

Design and write a class named A12Box which, when used in conjunction with the code shown in Listing 7 , will compile and run successfully producing the output shown in Figure 7 .

Listing 7 - Question 12.
/*File Q12.java ************************************************/public class Q12{public static void main(String[] args){A12Box<String,Integer>boxA = new A12Box<>("abcde",new Integer(500)); System.out.println(boxA.get1());System.out.println(boxA.get2());A12Box<Integer,String>boxB = new A12Box<>(new Integer(900),"fghijkl"); System.out.println(boxB.get1());System.out.println(boxB.get2()); }//end main}//end class Q12 //=============================================//
Figure 7 - Question 12.
abcde 500900 fghijkl

Answer 12

Question 13

Given: When mixing legacy code with generic code, you may encounter messages similar to those shown in Figure 8 .

Figure 8 - Question 13.
Note: Example.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details.

True or False: In such cases, the term "unchecked" means that the compiler does not have enough type information to perform all type checks necessary to ensure type safety.

Answer 13

Figures

Listings

What is the meaning of the following two images?

These images were inserted here simply to insert some space between the questions and the answers to keep them from being visible on the screen at thesame time.

Spacer image of a rabbit and a penguin.

This image was also inserted for the purpose of inserting space between the questions and the answers.

Spacer image of a penguin and some houses.

Answers

Answer 13

True.

Back to Question 13

Answer 12

One possible solution is provided in Listing 8 below.

Listing 8 - Answer 12.
/*File A12Box.java ************************************************/public class A12Box<T1,T2>{ private T1 t1;private T2 t2; public A12Box(T1 t1,T2 t2){this.t1 = t1; this.t2 = t2;}//end constructorpublic T1 get1(){ return t1;}//end get1public T2 get2(){ return t2;}//end get2 }//end A12Box//=============================================//

Back to Question 12

Answer 11

One possible solution is provided in Listing 9 below.

Listing 9 - Answer 11.
/*File A11Box.java ************************************************/public class A11Box<T>{ private T t;public A11Box(T t){ this.t = t;}//end constructorpublic T get(){ return t;}//end get }//end A11Box//=============================================//

Back to Question 11

Answer 10

True.

Back to Question 10

Answer 9

False. This program produces the error message shown in Figure 9 below.

Figure 9 - Answer 9.
Q09.java:8: error: illegal start of type Box<>box = new Box<Integer>(); ^1 error

Back to Question 9

Answer 8

One possible solution is shown in Listing 10 below.

Listing 10 - Answer 8.
/*File A08Box.java ************************************************/public class A08Box<T>{ private T t;public void set(T t){ this.t = t;}//end setpublic T get(){ return t;}//end get }//end A08Box//=============================================//

Back to Question 8

Answer 7

False. This program produces the compiler errors shown in Figure 10 below.

Figure 10 - Answer 7.
Q07.java:8: error: type Box does not take parameters Box<Integer>box = new Box<Integer>(); ^Q07.java:8: error: type Box does not take parameters Box<Integer>box = new Box<Integer>(); ^2 errors

Back to Question 7

Answer 6

True.

Back to Question 6

Answer 5

True.

Back to Question 5

Answer 4

True.

Back to Question 4

Answer 3

False. The correct statement is:

"Type parameters provide a way for you to re-use the same code with different inputs. The inputs to type parameters are types ."

Back to Question 3

Answer 2

True,

Back to Question 2

Answer 1

False. The correct statement is

"Generics add stability to your code by making more of your bugs detectable at compile time ."

Back to Question 1

Miscellaneous

This section contains a variety of miscellaneous information.

Housekeeping material
  • Module name: Java4220r: Review of Generic Types
  • File: Java4220r.htm
  • Published: 09/02/13
Disclaimers:

Financial : Although the Connexions site makes it possible for you to download aPDF file for this module at no charge, and also makes it possible for you to purchase a pre-printed version of the PDF file, youshould be aware that some of the HTML elements in this module may not translate well into PDF.

I also want you to know that, I receive no financial compensation from the Connexions website even if you purchase the PDF version ofthe module.

In the past, unknown individuals have copied my modules from cnx.org, converted them to Kindle books, and placed them for sale onAmazon.com showing me as the author. I neither receive compensation for those sales nor do I know who does receive compensation. If youpurchase such a book, please be aware that it is a copy of a module that is freely available on cnx.org and that it was made andpublished without my prior knowledge.

Affiliation : I am a professor of Computer Information Technology at Austin Community College in Austin, TX.

-end-

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?

Ask