java 泛型的默认值_java泛型

1.什么是泛型

泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。

泛型:泛型类      泛型接口     泛型方法

作用:提高程序健壮性,简化代码

泛型的默认值是Object

jdk 要1.5以上

2.泛型定义

/**

*泛型类

*首先定义一个person的实体类 Person其中A代表的就是一个泛型,调用时可以自定义数据类型

*/

package com.temp;

public class Person {

private A pname;

private B page;

private C psex;

public A getPname() {

return pname;

}

public void setPname(A pname) {

this.pname = pname;

}

public B getPage() {

return page;

}

public void setPage(B page) {

this.page = page;

}

public C getPsex() {

return psex;

}

public void setPsex(C psex) {

this.psex = psex;

}

}

/**

*调用泛型类

*/

//泛型的属性  属性的数据类型 由调用方来决定当前属性数据类型

//integer 是int数据类型的封装类

//Character 是char的类型的封装类

//必定只能是类而不是基础数据类型的关键字

Person p=new Person<>();

p.setPname("mz");

p.setPage(10);

p.setPsex('男');

/**

*定义泛型方法

*/

package com.temp;

public class PresonMethod {

public M getValue(M elenment) {

if(elenment!=null) {

return elenment;

}

return elenment;

}

}

/**

*调用泛型方法

*/

PresonMethod pm=new PresonMethod<>();

pm.getValue(20);

/**

*定义泛型接口

*/

package com.temp;

import java.util.List;

/**

* 泛型的结果实现可以在实现类中定义好 也可以在调用的地方定义

* 接口实现接口 实现类实现类

* 基础接口 自定义接口来扩展实现类的方法

* @author dell

*

* @param

*/

public interface IBaseFace {

/**

* 增加的公共方法

* @param element

* @return

*/

public int addObject(M element);

/**

* 编辑

* @param element

* @return

*/

public int editObject(M element);

/**

* 删除

* @param element

* @return

*/

public int removeObject(M element);

/**

* 查询单个对象的方法

* @param element

* @return

*/

public M queryObject(M element);

/**

* 查询多个对象的方法

* @param element

* @return

*/

public List queryObjects(M element);

/**

* 查询并且分页

* @param element

* @return

*/

public List queryObjectPage(M element);

}

/**

*定义基础接口

*/

package com.temp;

/**

* 可以在当前类的接口确定它的数据类型

* @author dell

*

*/

public interface IpersonFace extends IBaseFace>{

public boolean queryUserName(String uanem);

}

/**

*调用泛型接口

*/

package com.temp;

import java.util.List;

public class Personimpl implements IpersonFace{

@Override

public int addObject(Person element) {

// TODO Auto-generated method stub

return 0;

}

@Override

public int editObject(Person element) {

// TODO Auto-generated method stub

return 0;

}

@Override

public int removeObject(Person element) {

// TODO Auto-generated method stub

return 0;

}

@Override

public Person queryObject(Person element) {

// TODO Auto-generated method stub

return null;

}

@Override

public List> queryObjects(Person element) {

// TODO Auto-generated method stub

return null;

}

@Override

public List> queryObjectPage(Person element) {

// TODO Auto-generated method stub

return null;

}

@Override

public boolean queryUserName(String uanem) {

// TODO Auto-generated method stub

return false;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值