.


:




:

































 

 

 

 


, .




// , using System;

// , class Gen<T> {

ob;

public Gen( ) { ob = ;

}

// ob. public GetOb() { return ob;

}

}

// , Gen. class Gen2<T>: Gen<T> {

public Gen2(T o): base(o) {

II...

}

class GenHierDemo { static void Main() {

Gen2<string> g2 = new Gen2<string>("");

Console.WriteLine(g2.GetOb());

Gen 2 Gen. Gen 2 .

class Gen2<T>: Gen<T> {

Gen2 Gen. , , Gen2, Gen. , :

Gen2<string> g2 = new Gen2<string>("");

string Gen. ob Gen2, Gen, string.

, Gen2 , Gen. , , , .

, , . , Gen2 .

// , using System;

// , class Gen<T> {

ob; //

// . public Gen(T ) { ob = ;

}

// ob. public GetOb () {

Return ob;

}

}

// , Gen. // V. class Gen2<T, V>: Gen<T> {

V ob2;

public Gen2(T , V o2): base (o) {

ob2 = o2;

}

public V Get0bj2() { return ob2;

' }

}

11 Gen2. class GenHierDemo2 { static void Main() {

// Gen2 // string int.

Gen2<string, in.t> x =

new Gen2<string, int>(" : ", 99);

Console.Write(x.GetOb());

Console.WriteLine(x.GetObj2());

}

}

Gen2 .

class Gen2<T, V>: Gen<T> {

, Gen; V , Gen2. 2 , GetOb j 2 (). Main () Gen2 string V int. .

: 99

. . .

// // .

Using System;

// , class NonGen { int num;

public NonGen(int i) { num = i;

}

public int GetNum() { return num;

}

}

// , class Gen<T>: NonGen {

T ob;

public Gen(T , int i): base (i) {

ob = o;

}

// ob. public T GetOb() { return ob;

}

}

// Gen. class HierDemo3 {

static void Main() {

// Gen string.

Gen<String> w = new Gen<String>("", 47);

Console.Write(w.GetOb() + " ");

Console.WriteLine(w.GetNum());

}

}

.

47

, Gen NonGen .

class Gen<T>: NonGen {

NonGen , . , , Gen, NonGen . , Gen NonGen , .. - .

, . , GetOb ().

// , using System;

// , class 'Gen<T> { protected ob;

public Gen(T ) { ob = ;

}

// ob. .

public virtual T GetOb () {

Console.Write(" GetOb () Gen" + " : "); return ob;

}

}

// , Gen. // GetOb (). class Gen2<T>: Gen<T> {

public Gen2 (T o): base(o) { }

// GetOb(). public override T GetOb() {

Console.Write(" GetOb() Gen2" + " : "); return ob;

}

}

// , class OverrideDemo { static void Main() {

// Gen int.

Gen<int> iOb = new Gen<int>(88);

// GetOb() Gen.





:


: 2016-12-03; !; : 415 |


:

:

, .
==> ...

1372 - | 1226 -


© 2015-2024 lektsii.org - -

: 0.013 .