发布一篇Java中泛型的了解与等价完成
C++编译的是本地码,优点是启动快,而且可以精确控制资源因此可以开发很高效的程序.缺点是编程麻烦,而且容易留下安全隐患.跨平台靠源代码在各个平台间分别编译(一处编写到处编译)泛型是JavaSE1.5的新特征,泛型的实质是参数化范例,也就是说所操纵的数据范例被指定为一个参数。这类参数范例能够用在类、接口和办法的创立中,分离称为泛型类、泛型接口、泛型办法。
Java言语引进泛型的优点是平安复杂。
在JavaSE1.5之前,没有泛型的情形的下,经由过程对范例Object的援用来完成参数的“恣意化”,“恣意化”带来的弱点是要做显式的强迫范例转换,而这类转换是请求开辟者对实际参数范例能够预知的情形下举行的。关于强迫范例转换毛病的情形,编译器大概不提醒毛病,在运转的时分才呈现非常,这是一个平安隐患。
泛型的优点是在编译的时分反省范例平安,而且一切的强迫转换都是主动和隐式的,进步代码的重用率。
泛型在利用中另有一些划定规矩和限定:
1、泛型的范例参数只能是类范例(包含自界说类),不克不及是复杂范例。
2、统一种泛型能够对应多个版本(由于参数范例是不断定的),分歧版本的泛型类实例是不兼容的。
3、泛型的范例参数能够有多个。
4、泛型的参数范例可使用extends语句,比方。习气上成为“有界范例”。
5、泛型的参数范例还能够是通配符范例。比方ClassclassType=Class.forName(java.lang.String);
泛型另有接口、办法等等,内容良多,必要消费一番工夫才干了解把握并纯熟使用。在此给出我已经懂得泛型时分写出的两个例子(依据看的印象写的),完成一样的功效,一个利用了泛型,一个没有使用,经由过程对照,能够很快学会泛型的使用,学会这个基础上学会了泛型70%的内容。
例子一:利用了泛型
publicclassGenT{
privateTob;//界说泛型成员变量
publicGen(Tob){
this.ob=ob;
}
publicTgetOb(){
returnob;
}
publicvoidsetOb(Tob){
this.ob=ob;
}
publicvoidshowTyep(){
System.out.println("T的实践范例是:"+ob.getClass().getName());
}
}
publicclassGenDemo{
publicstaticvoidmain(String[]args){
//界说泛型类Gen的一个Integer版本
GenIntegerintOb=newGenInteger(88);
intOb.showTyep();
inti=intOb.getOb();
System.out.println("value="+i);
System.out.println("----------------------------------");
//界说泛型类Gen的一个String版本
GenStringstrOb=newGenString("HelloGen!");
strOb.showTyep();
Strings=strOb.getOb();
System.out.println("value="+s);
}
<p>
到时我们不用学struts,不用学spring,不用学Hibernate,只要能把jsf学会了,完全可以替代所有的框架,包括AJAX,都知道AJAX并不是新技术,虽说我没深入学习jsf但我认为jsf应该已经能通过其它技术替代AJAX,实现无缝刷新。 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展 http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! 象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 是一种将安全性(Security)列为第一优先考虑的语言 有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
页:
[1]
2