| 
1 |  | -package basics;  | 
2 |  | - | 
3 | 1 | interface SampleInterface {  | 
4 |  | -public void displayClass();  | 
 | 2 | + void displayClass();  | 
5 | 3 | }  | 
 | 4 | + | 
6 | 5 | class BoundTest<T extends SampleClass & SampleInterface> {  | 
7 |  | -	private T objRef;  | 
8 |  | -	public BoundTest(T obj) {  | 
9 |  | -		this.objRef = obj;  | 
10 |  | -	}  | 
11 |  | - | 
12 |  | -	public void doRunTest(){  | 
13 |  | -		this.objRef.displayClass();  | 
14 |  | -	}  | 
15 |  | -}  | 
 | 6 | + private T objRef;  | 
16 | 7 | 
 
  | 
 | 8 | + public BoundTest(T obj) {  | 
 | 9 | + this.objRef = obj;  | 
 | 10 | + }  | 
 | 11 | + | 
 | 12 | + public void doRunTest() {  | 
 | 13 | + objRef.displayClass();  | 
 | 14 | + }  | 
 | 15 | +}  | 
17 | 16 | 
 
  | 
18 | 17 | class SampleClass implements SampleInterface {  | 
19 |  | -public void displayClass() {  | 
20 |  | -System.out.println("Inside supper Class A");  | 
21 |  | -}  | 
 | 18 | +public void displayClass() {  | 
 | 19 | +System.out.println("Inside super Class A");  | 
 | 20 | +}  | 
22 | 21 | }  | 
23 |  | -class BoundedTypesGenerics02 {  | 
24 | 22 | 
 
  | 
25 |  | -	public static void main(String a[]) {  | 
26 |  | -		BoundTest<SampleClass> b = new BoundTest<>(new SampleClass());  | 
27 |  | -		b.doRunTest();  | 
28 |  | -	}  | 
 | 23 | +public class BoundedTypesGenerics02 {  | 
 | 24 | + public static void main(String[] args) {  | 
 | 25 | + BoundTest<SampleClass> b = new BoundTest<>(new SampleClass());  | 
 | 26 | + b.doRunTest();  | 
 | 27 | + }  | 
29 | 28 | }  | 
0 commit comments