仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1917|回复: 19
打印 上一主题 下一主题

[学习教程] JAVA编程:java和c++对照(1)--虚函数和指针

[复制链接]
金色的骷髅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:46:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
他们对jsp,servlet,javabean进行封装就是为了展示他们的某个思想,与java的开发并没有必然的关系,也不见得在所以情况下,别人使用起来会简单。c++|对照|函数
1.java中有虚函数,可是没指针,那大概会有如许的成绩,那java是怎样完成多态的?
java中能够一定是有虚函数的,并且我们假如不声名为final形他默许就是虚函数.不必vitual声名.
"InJava,youdonotneedtodeclareamethodasvirtual.Dynamicbindingisthedefaultbehavior.Ifyoudonotwantamethodtobevirtual,youtagitasfinal"--from<corejava2:volumI>.
java中没显现的和c++中的指针,可是他有地点的观点的.并且一切我们声名的"对象"实在就是地点(或叫句柄),给他赋值就是把他指向一个内存单位.固然也能够改动他的指向.实在我们"对象"的赋值操纵满是地点在变东,对象仍是没有变的.那大概有人会说那样的话不是会发生良多没有"对象"(句柄)的内存地区.是的是会发生,可是java的渣滓搜集机制会给我们接纳如许的内存"泄露".以是我们只体贴我们操纵的对象就行,其他的我们不必的对象的后事渣滓搜集会给我们干.
分明了在java中的"对象"而非我们c++中了解的对象.而实践上是指针(句柄)那多态固然能够完成.
上面举个"对象"赋值(援用)的例子申明,满是地点在变,而非真的内存单位.
publicclassNumber{
privateintnumber;

publicNumber(intnumber){
this.number=number;
}

publicintgetNumber(){
returnthis.number;
}

publicvoidsetNumber(intnumber){
this.number=number;
}

publicstaticvoidmain(String[]args){
Numberone=newNumber(1);
Numbertwo=newNumber(2);
System.out.println("Beginning:");
System.out.println("One="+one.getNumber());
System.out.println("Two="+two.getNumber());

//Assigntwotoone
two=one;//在这里two这个句柄的值(即某个对象的地点)改成one这个句柄的值了.从而two和one指同时//向one之前指向的谁人内存单位(对象).而two之前指向的谁人对象如今为没有句柄毗连的对象了.大概要被渣滓搜集
System.out.println("
Afterassigningtwotoone:");
System.out.println("One="+one.getNumber());
System.out.println("Two="+two.getNumber());

//Changethevalueoftwo
two.setNumber(3);//two和one指向统一个单位,以是他对改单位的改动,one能感知.
System.out.println("
Aftermodifyingtwo:");
System.out.println("One="+one.getNumber());
System.out.println("Two="+two.getNumber());
}
}
运转了局:
Beginning:
One=1
Two=2
Afterassigningtwotoone:
One=1
Two=1
Aftermodifyingtwo:
One=3
Two=3
Pressanykeytocontinue...
java老手和进修c++的一点感觉,若有不合错误的地方,还看指出.
你通过从书的数量和开发周期及运行速度来证明:net和ruby要比java简单。
简单生活 该用户已被删除
沙发
发表于 2015-1-18 18:52:34 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
爱飞 该用户已被删除
板凳
发表于 2015-1-22 22:42:21 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
飘飘悠悠 该用户已被删除
地板
发表于 2015-1-25 14:58:28 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
再现理想 该用户已被删除
5#
发表于 2015-2-2 22:33:16 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
灵魂腐蚀 该用户已被删除
6#
发表于 2015-2-8 16:14:45 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
飘灵儿 该用户已被删除
7#
发表于 2015-2-11 06:00:41 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
老尸 该用户已被删除
8#
发表于 2015-3-11 00:04:37 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
9#
发表于 2015-3-17 16:10:50 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
小女巫 该用户已被删除
10#
发表于 2015-3-24 11:40:23 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
谁可相欹 该用户已被删除
11#
发表于 2015-3-25 01:38:15 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
第二个灵魂 该用户已被删除
12#
发表于 2015-4-4 15:30:00 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
柔情似水 该用户已被删除
13#
发表于 2015-4-12 13:28:00 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
若天明 该用户已被删除
14#
发表于 2015-4-14 06:40:33 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
金色的骷髅 该用户已被删除
15#
 楼主| 发表于 2015-4-16 18:09:22 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
不帅 该用户已被删除
16#
发表于 2015-4-24 18:36:01 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
若相依 该用户已被删除
17#
发表于 2015-4-29 13:19:43 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
变相怪杰 该用户已被删除
18#
发表于 2015-6-18 08:48:38 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
再见西城 该用户已被删除
19#
发表于 2015-6-23 04:45:40 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
蒙在股里 该用户已被删除
20#
发表于 2015-7-5 00:23:24 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 03:37

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表