<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是出於安全考慮,外部類不能隨意修改
父類對象的成員。