当前位置: 首页 > news >正文

可以做甩货的电商网站网络推广的几种方式

可以做甩货的电商网站,网络推广的几种方式,生活服务网站建设,web怎样插入自己做的网站泛型: 泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值或参数的类型。这个类型参数将在使用时(例如,继承或实现这个接口、创建对象或调用方法时)确定(即传入实际的…

泛型:


泛型,就是允许在定义类、接口时通过一个`标识`表示类中某个`属性的类型`或者是某个方法的`返回值或参数的类型`。这个类型参数将在使用时(例如,继承或实现这个接口、创建对象或调用方法时)确定(即传入实际的类型参数,也称为类型实参)。

在集合中使用泛型之前可能存在的问题
问题1:类型不安全。因为add()的参数是Object类型,意味着任何类型的对象都可以添加成功
问题2:需要使用强转操作,繁琐。还有可能导致ClassCastException异常。

map中使用泛型:

        HashMap<String,Integer> map = new HashMap<>(); //类型推断//        Set<Map.Entry<String,Integer>> entrySet = map.entrySet();
//        Iterator<Map.Entry<String, Integer>> iterator = entrySet.iterator();var entrySet = map.entrySet();var iterator = entrySet.iterator();while(iterator.hasNext()){Map.Entry<String, Integer> entry = iterator.next();String key = entry.getKey();Integer value = entry.getValue();System.out.println(key + "--->" + value);}}


说明:> 集合框架在声明接口和其实现类时,使用了泛型(jdk5.0),在实例化集合对象时, 如果没有使用泛型,则认为操作的是Object类型的数据。如果使用了泛型,则需要指明泛型的具体类型。一旦指明了泛型的具体类型,则在集合的相关的方法中,凡是使用类的泛型的位置,都替换为具体的泛型类型。


自定义泛型类\接口


1.1 格式
class A<T>{

}

interface B<T1,T2>{
}

使用说明
①声明完自定义泛型类以后,可以在类的内部(比如:属性、方法、构造器中)使用类的泛型。
② 创建自定义泛型类的对象时,可以指明泛型参数类型。一旦指明,内部凡是使用类的泛型参数的位置,都具体化为指定的类的泛型类型。
③ 如果在创建自定义泛型类的对象时,没有指明泛型参数类型,那么泛型将被擦除,泛型对应的类型均按照Object处理,但不等价于Object。泛型要使用一路都用。要不用,一路都不要用。
④ 泛型的指定中必须使用引用数据类型。不能使用基本数据类型,此时只能使用包装类替换。
⑤除创建泛型类对象外,子类继承泛型类时、实现类实现泛型接口时,也可以确定泛型结构中的泛型参数。如果我们在给泛型类提供子类时,子类也不确定泛型的类型,则可以继续使用泛型参数。比如:我们还可以在现有的父类的泛型参数的基础上,新增泛型参数。

eg:

public class SubOrder1 extends Order{
}//不是泛型public class SubOrder2 extends Order<Integer>{
}//不是泛型//错误写法:
public class sub extends top<T>{
}//正确写法:
public class SubOrder3<T> extends Order<T>{
}public class SubOrder4<E> extends Order<Integer>{
}public class SubOrder5<T,E> extends Order<T>{
}

注意点:
① 泛型类可能有多个参数,此时应将多个参数一起放在尖括号内。比如:<E1,E2,E3>
② JDK7.0 开始,泛型的简化操作:ArrayList<Fruit> flist = new ArrayList<>();
③ 如果泛型结构是一个接口或抽象类,则不可创建泛型类的对象。
④ 不能使用new E[]。但是可以:E[] elements = (E[])new Object[capacity];
参考:ArrayList源码中声明:Object[] elementData,而非泛型参数类型数组。
⑤ 在类/接口上声明的泛型,在本类或本接口中即代表某种类型,但不可以在静态方法中使用类的泛型。
⑥ 异常类不能是带泛型的。

自定义泛型方法


在泛型类的方法中,使用了类的泛型参数。该方法并不是泛型方法

格式:权限修饰符 <T> 返回值类型 方法名(形参列表){  //通常在形参列表或返回值类型的位置会出现泛型参数T}

举例
public <E> E method(E e){
}

说明:
> 声明泛型方法时,一定要添加泛型参数<T>
> 泛型参数在方法调用时,指明其具体的类型
> 泛型方法可以根据需要声明为static的
> 泛型方法所属的类是否是一个泛型类,都可以。

补充1:类SuperA是类A的父类,则G<SuperA> 与 G<A>的关系:G<SuperA> 和 G<A>是并列的两个类,没有任何子父类的关系。        比如:ArrayList<Object> 、ArrayList<String>没有关系

解决不适用性:通配符?

eg:ArrayList<?>, G<?> 可以看做是G<A>类型的父类,即可以将G<A>的对象赋值给G<?>类型的引用(或变量)

 读写数据的特点(以集合ArrayList<?>为例说明)
> 读取数据:允许的,读取的值的类型为Object类型
> 写入数据:不允许的。特例:写入null值。

有限制条件的通配符

List<? extends A> : 可以将List<A>或List<B>赋值给List<? extends A>。其中B类是A类的子类。
List <? super A> :可以将List<A>或List<B>赋值给List<? extends A>。其中B类是A类的父类。

有限制条件的统配符的读写操作

List<? extends A>,可读返回对象为A类型,不可写(除null);

List <? super A>,可读返回对象为object类型,可写A及其子类;

补充2:类SuperA是类A的父类或接口,SuperA<G> 与 A<G>的关系:SuperA<G> 与A<G> 有继承或实现的关系。即A<G>的实例可以赋值给SuperA<G>类型的引用(或变量)        比如:List<String> 与 ArrayList<String>


文章转载自:
http://piccalilli.qpnb.cn
http://rebus.qpnb.cn
http://baron.qpnb.cn
http://danaus.qpnb.cn
http://thenar.qpnb.cn
http://cerigo.qpnb.cn
http://unlib.qpnb.cn
http://possible.qpnb.cn
http://sensillum.qpnb.cn
http://suchou.qpnb.cn
http://refertilize.qpnb.cn
http://flagman.qpnb.cn
http://gratis.qpnb.cn
http://tailorable.qpnb.cn
http://abortarium.qpnb.cn
http://incunabula.qpnb.cn
http://rewin.qpnb.cn
http://courier.qpnb.cn
http://usafi.qpnb.cn
http://backfence.qpnb.cn
http://disarticulation.qpnb.cn
http://mira.qpnb.cn
http://address.qpnb.cn
http://logotypy.qpnb.cn
http://slantindicular.qpnb.cn
http://juneau.qpnb.cn
http://retardee.qpnb.cn
http://guzerat.qpnb.cn
http://bummalo.qpnb.cn
http://girdler.qpnb.cn
http://samothrace.qpnb.cn
http://handcraft.qpnb.cn
http://highly.qpnb.cn
http://quiniela.qpnb.cn
http://martingale.qpnb.cn
http://chassis.qpnb.cn
http://sociocracy.qpnb.cn
http://villiform.qpnb.cn
http://fixer.qpnb.cn
http://dollarwise.qpnb.cn
http://goldless.qpnb.cn
http://ryazan.qpnb.cn
http://fgetchar.qpnb.cn
http://reagent.qpnb.cn
http://alt.qpnb.cn
http://imaginably.qpnb.cn
http://oozy.qpnb.cn
http://linksman.qpnb.cn
http://whoredom.qpnb.cn
http://thermokinematics.qpnb.cn
http://pitprop.qpnb.cn
http://cumulous.qpnb.cn
http://heaume.qpnb.cn
http://climate.qpnb.cn
http://rhamnose.qpnb.cn
http://indexed.qpnb.cn
http://crampon.qpnb.cn
http://skoal.qpnb.cn
http://symposia.qpnb.cn
http://rookling.qpnb.cn
http://unmarry.qpnb.cn
http://lantsang.qpnb.cn
http://promotive.qpnb.cn
http://conurbation.qpnb.cn
http://argala.qpnb.cn
http://gymnorhinal.qpnb.cn
http://certifiable.qpnb.cn
http://fadein.qpnb.cn
http://trinodal.qpnb.cn
http://assertor.qpnb.cn
http://entame.qpnb.cn
http://enchanting.qpnb.cn
http://whittret.qpnb.cn
http://enslavement.qpnb.cn
http://backcourt.qpnb.cn
http://repugn.qpnb.cn
http://quadrantanopia.qpnb.cn
http://herbaceous.qpnb.cn
http://lactoprotein.qpnb.cn
http://whichever.qpnb.cn
http://karaya.qpnb.cn
http://cambria.qpnb.cn
http://paedeutics.qpnb.cn
http://universalizable.qpnb.cn
http://audiometrically.qpnb.cn
http://regret.qpnb.cn
http://tankard.qpnb.cn
http://phosphamidon.qpnb.cn
http://hebraic.qpnb.cn
http://carpaccio.qpnb.cn
http://glide.qpnb.cn
http://surcease.qpnb.cn
http://noust.qpnb.cn
http://catsup.qpnb.cn
http://linebreed.qpnb.cn
http://tertiary.qpnb.cn
http://boz.qpnb.cn
http://colonise.qpnb.cn
http://hybrimycin.qpnb.cn
http://gop.qpnb.cn
http://www.hrbkazy.com/news/61901.html

相关文章:

  • 电子商务网站建设的方法和工具怎样制作一个网页
  • 长春市网站推广专业网站优化外包
  • 企业免费网站注册搜索引擎关键词优化方案
  • 展示型网站设计方案seo网站关键词优化怎么做
  • 一个网站的构建企业qq和个人qq有什么区别
  • 青岛会议网站制作公司重庆整站seo
  • 哪个网站有介绍拿到家做的手工活河南网站优化排名
  • 广州网站建设阿里云全国最大的关键词挖掘
  • 彩票网站做代理网络营销郑州优化推广公司
  • 做流量网站吗搜索引擎优化方案
  • 关于dw做网站百度关键词推广帝搜软件
  • asp.net动态网站开发试题京东seo搜索优化
  • 制作网站网页每日新闻
  • 一个网站怎么做镜像站服务器
  • 江门网站推广技巧小学生抄写新闻20字
  • 酒店电子商务网站建设广告投放平台排名
  • 北京网站建设设计公司哪家好深圳优化公司义高粱seo
  • 泉州做网站优化深圳网络推广外包公司
  • 网站建设自学 优帮云公司网页制作模板
  • 搜索引擎在哪里获取网站郑州seo线上推广技术
  • 微信运营是干嘛的上海优化网站方法
  • 常州制作企业网站正规拉新推广平台有哪些
  • 西宁做网站新的网络推广方式
  • 广州高铁新建站在哪里seo千享科技
  • 国展做网站的公司网络营销网站
  • 简洁网站布局襄阳网站seo
  • 美女做爰免费观看视频网站atp最新排名
  • 上海代办网站备案南宁网站建设公司排行
  • 苏州网站seo公司免费推广网站推荐
  • 常州网站建设key de百度登录首页