泛型理解之元組類庫

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">java編程思想一直是程序員比較害怕閱讀並且很難懂的一本“高端”書籍,最近項目不太緊,給自己規定每天看三小節,並將自己理解的知識和課後習題依照自己的</span>

理解給予答案,純屬學習,工作剛半年,有太多東西需要積累,技術上的和非技術上的,希望在互聯網做一個“不是程序員的”程序員,多的不扯,進入正題:

(一).泛型---元組類庫

如果需要一個類包含很多中不同類型的對象,可以用元組,直接將一組對象(可以是不同類型)打包進一個單一對象(泛型對象),爲了創建不同長度的元組,我們需要

創建多個元組,我們可以採用繼承的思想來解析元組

第一個元組,代碼如下:

package com;

class Automobile{};
class cx<A,B>{
	public final A a;
	public final B b;
	protected cx(A a,B b)
	{
		this.a=a;
		this.b=b;
	}
	public A getA() {
		return a;
	}
	public B getB() {
		return b;
	}
	public String toString()
	{
		return "("+a+","+b+")";
	}
}

class cx_a<A,B,C> extends cx<A,B>
{
	public final C c;
	public C getC() {
		return c;
	}
	public cx_a(A a, B b,C c) {
		super(a, b);
		this.c=c;
		// TODO Auto-generated constructor stub
	}
	public String toString()
	{
		return "("+a+","+b+","+c+")";
	}
}

class cx_b<A,B,C,D> extends cx_a<A,B,C>
{
	public final D d;
	public cx_b(A a,B b,C c,D d)
	{
		super(a,b,c);
		this.d=d;
	}
	public D getD() {
		return d;
	}
	public String toString()
	{
		return "("+a+","+b+","+c+","+d+")";
	}
}
public class test<A,B,C,D,E> extends cx_b<A,B,C,D>
{
	private final E e;
	public test(A a,B b,C c,D d,E e)
	{
		super(a,b,c,d);
		this.e=e;
	}
	public E getE() {
		return e;
	}
	public String toString()
	{
		return "("+a+","+b+","+c+","+d+","+e+")";
	}
	public static void main(String[] args) {
		test<String,Integer,String,String,Long> temp=new test<String,Integer,String,String,Long>("a",3,"b","c",(long) 345);
		System.out.println(temp.toString());
	}
}
注意,如果想要不同的元組長度,可以採用繼承的形式,繼承的子類如果想要繼承父類的功能或者元素,可以用super,我這裏使用final是出於安全考慮,外部類不能隨意修改

父類對象的成員。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章