① 关于C加加和java

  1. C++之父评论C++与Java

    http://soft.yesky.com/info/223/2414723.shtml

  2. Linux之父炮轰C++:

    http://os.51cto.com/art/200709/55562.htm?1366380720

  3. Java之父评价C语言之父:我用尽了形容词

    http://www.csdn.net/article/2011-10-19/306010?1366380958



  • C++之父评论C++与Java

如果人们非要拿C++和Java来作比较,我建议他们去阅读TheDesignandEvolutionofC++,看看C++为什么是今天这个样子,用我在设计C++时遵从的原则来检验这两种语言。这些原则与SUN的Java开发小组所持的理念显然是不同的。除了表面语法的相似性之外,C++与Java是截然不同的语言。在很多方面,Java更像Smalltalk。(Sun的培训教材清楚地写道:Java在设计上采用了与C++相似的语法,与Smalltalk相似的语义。所以可以说Java与C++是貌合神离,与Smalltalk才是心有灵犀。)Java语言相对简单,这部分是一种错觉,部分是因为这种语言还不完整。随着时间的推移,Java在体积和复杂程度上都会大大增长。在体积上它会增长两到三倍,而且会出现一些实现相关的扩展或者库。这是一条每个成功的商业语言都必须走过的发展之路。随便分析一种你认为在很大范围内取得了成功的语言,我知道肯定是无有例外者,而且实际上这非常有道理。

上边这段话是在Java1.1推出之前写的。我确信Java需要类似模板的机制,并且需要增强对于固有类型的支持。简单地说,就是为了基本的完整性也应该做这些工作。另外还需要做很多小的改动,大部分是扩展。1998年秋,我从JamesGosling(Java语言的创始人)那里得到一份建议书,说是要在Java中增加固有类型、操作符重载以及数学计算支持。

还有一篇论文,是数学分析领域的世界级大师,伯克利大学的W.Kahan教授所写的HowJava'sFloating-PointHurtsEveryoneEverywhere(且看Java的浮点运算如何危害了普天下的芸芸众生),揭露了Java的一些秘密。我发现在电视和出版物中关于Java的鼓吹是不准确的,而且气势汹汹,让人讨厌。大肆叫嚣凡是非Java的代码都是垃圾,这是对程序员的侮辱;建议把所有的保留代码都用Java重写,这是丧心病狂,既不现实也不负责任。Sun和他的追随者似乎觉得为了对付微软罪恶的“帝国时代”,就必须如此自吹自擂。但是侮辱和欺诈只会把那些喜欢使用不同编程语言的程序员逼到微软阵营里去。

Java并非平台无关,它本身就是平台。跟Windows一样,它也是一个专有的商业平台。也就是说,你可以为Windows/Intel编写代码,也可以为Java/JVM编写代码,在任何一种情况下,你都是在为一个属于某个公司的平台写代码,这些代码都是与该公司的商业利益扯在一起的。当然你可以使用任何一种语言,结合操作系统的机制来编写可供JVM执行的程序,但是JVM之类的东西是强烈地偏向于Java语言的。它一点也不像是通用的、公平的、语言中立的VM/OS。私下里,我会坚持使用可移植的C++作大部分工作,用不同的语言作余下的工作。

“Javaisnotplatform-independent,itistheplatform”,B.S的这句评语对于C++用户有着很大的影响,有些C++高手甚至把这句话作为自己的签名档,以表明对Java的态度和誓死捍卫C++的决心。

  • Linux之父炮轰C++:

糟糕程序员的垃圾语言(1)2007-09-0913:33刘江刘江@图灵我要评论(14)字号:T|TLinux之父为Linux内核开发而专门打造的版本控制软件Git已经引起了业界的广泛关注。DmitryKakurin查看源代码之后,发现使用的是纯C而非C++,表示不可理解。引起了Linux之父炮轰C++:糟糕程序员的垃圾语言。AD:2013大数据全球技术峰会低价抢票中

Linux之父炮轰C++:糟糕程序员的垃圾语言Linux之父话糙理不糙不得不看的两次从C++回归C的高手评论C++C语言是否该扔进垃圾桶为什么每个程序员都应该学习C语言?每个程序员都应该学习C语言?我可不这么认为C语言已经死了,5个需要忘却它的理由用C设计用C++编码为什么使用C++C++0x:崭新的C++,还是另一个Java?编程语言的三大定理动态语言为何难堪重任动态语言面面观Linux之父LinusTorvalds为了Linux内核开发而专门打造的版本控制软件Git已经引起了业界的广泛关注。昨天,有一位DmitryKakurin老兄在查看了源代码之后,发现使用的是纯C而非C++,表示不可理解,他直言:“别拿可移植性说事儿,这是屁话(BS,bullshit)。“(此外,他还批评Git蛮力地直接操作文本,既啰嗦又易错,而且很难跟上高层代码逻辑。)”这个BS引起了Torvalds的强烈反应,他用“*YOU*arefullofbullshit.”(你才满嘴屁话呢)作为自己反驳的开场白。接着,他先转向了对C++的罕见的火药味十足的炮轰:“C++是一种糟糕的(horrible)语言。而且因为有大量不够标准的程序员在使用而使情况更糟,以至于极容易产生彻头彻尾的垃圾(totalanttercrap)。老实说,选择C就是为了把C++程序员踢出去。……我有这样的结论,任何喜欢用C++而不是C开发项目的程序员可能都是我希望踢出去的人,免得他们来搞乱我参与的项目。C++会导致非常非常糟糕的设计选择。你们这些C++程序员总是一上来就用语言的那些‘漂亮的’库特性比如STL、Boost和其他彻头彻尾的垃圾,这可能对你们的程序有所‘帮助’,但是却会导致:

——当库无法工作时无穷无尽的折磨(别跟我说什么STL尤其是Boost很稳定而且可移植性很好,那全是屁话,而且一点都不可笑)

——低效的抽象编程模型,可能在两年之后你会注意到有些抽象效果不怎么样,但是所有代码已经依赖于围绕它设计的‘漂亮’对象模型了,如果不重写应用程序,就无法改正。也就是说,使用优秀的、高效的、系统级的和可移植的C++的唯一方式,最终还是限于使用C本身具有的所有特性。项目限制只用C,意味着参与的人不会捣乱,也意味着会得到许多真正懂得底层问题,而不会折腾那些白痴‘对象模型’垃圾的程序员。

所以,我很抱歉,但是对于Git这样效率是主要目标的软件,C++的所谓优点只是巨大的错误。而我们将看不到这一点的人排除在外却成了一个巨大的附加优势。如果你想要用C++写的版本控制系统,去玩Monotone吧。他们确实使用了‘真格的数据库’,使用了‘漂亮的面向对象库’、使用了‘漂亮的C++抽象’。可是说老实话,所有这些对某些计算机专业人士而言富于吸引力的设计决定,其最终结果确是一堆可怕、难以维护的垃圾。”【070907更新】Torvalds和DmitryKakurin争论继续中。对Torvalds的回击,Dmitry反唇相讥:“随着只用C编程的恐龙们逐渐灭绝,你很快就会发现只剩下自己一个人在固执己见。用Git贡献者的数量是说明不了问题的。<显然C++开发者也能够贡献C代码。但是以为他们喜欢这种方式,那可就错了。

没有C的时候我用汇编编程。然后在C++诞生之前,我转向了C。现在我使用C++和C#,而且不再走回头路。差劲的程序员用任何语言都写不出好程序。但是为了将差劲的贡献者拒之门外这样一个没谱的理由而惩罚优秀的开发者,这简直是胡闹。”只过了10几分钟,Torvalds就回贴了:“和你不同的是,我实实在在地给出了不喜欢C++的原因,而且指出了它可能导致的各种问题的一些例子。而你呢,没有给出一条像样的使用C++的理由。事实上,Git比其他软件配置管理软件都要好,而好的品味(taste)和C正是原因之一。”

对上面的最后一句话,Torvalds后来又做了如下补充:

“说得更具体一些:

——简单和清晰的核心数据结构,非常精益(lean)且颇具雄心的暧昧管理着它们,将“简单胜于花哨”这一方法发挥到极致。

——有意识地不抽象数据结构和算法,因为它们恰恰是Git核心的全部要素(wholepoint)。 如果你想用更花哨的语言,C++绝对是最糟糕的选择。如果想要真正的高级特性,那就选择有垃圾回收或者好的系统集成的,而不是既缺乏C的简约(sparseness)又缺乏C的直接而且没有重要概念的高层绑定(high-)的东西。 一言以蔽之,C++正处在困境当中,它既无法帮助原型化或者简单的GUI编程足够简化从而真正可用,不是C那样积极地鼓励你使用简单和直接的语言构造的精益系统编程语言。” (另一位同学插了一句:这还没有提到很难找到两个C++编译器支持同样的特性。)“这与什么恐龙毫无关系。好的品味永远不会过时。将C与汇编语言相提并论,恰恰说明你对自己所讨论的问题缺乏起码的概念(don'thaveafrigginidea)。”


  • Java之父评价C语言之父:我用尽了形容词

摘要:Java之父JamesGosling在上周发布了关于讨论C语言之父DennisRitchie的简短博文称:C语言撑起了一切,他的影响巨大,并超越了科技世界。

Java之父詹姆斯·高斯林(JamesGosling)在上周发布了关于讨论C语言之父丹尼斯·里奇(DennisRitchie)的简短博文:丹尼斯·里奇辞世的新闻如五雷轰顶。过去几天已经有很多资讯报道此事。他的影响巨大,并超越了科技世界,虽然他的大多影响都不为人知,但完全可以感受到。C语言撑起了一切。我的整个职业生涯也是从C语言和Unix中发展而来。对当今的大多数工程师而言,很难理解我在20世纪70年代感受到的幸福愉快感。当一种编程语言最终出现,我(其他人也)可以从汇编语言提升到一种真正的编程语言。我们可以做任何一切,过去我们得编写所有低级位系统。在C语言之前,编程语言达不到任务:开销太大了。系统的复杂性是真的阻碍了用汇编语言编写大型软件。C语言就像代码的JATO。(编注:“JATO”是“Jet-fuelassistedtakeoff”的缩写,字面意思:“辅助起飞的喷气燃料”。这个系统通过小型火箭提供辅助动力,以帮助超载的飞机起飞升空。)下面是詹姆斯·高斯林此文的一些评论:TruelyJames.,.dentertaining.RIPRitchie!!!说的很对,詹姆斯!对于每个计算机专业人士,他们所接触的第一种编程语言就是C语言。(C语言)有着如此多的令人惊奇的地方,这也使得学习过程非常有趣。安息,里奇!!!Greatonesarefalling.IstillloveC.Sosimple.Sopowerful.一位巨星的陨落。我仍然爱着C语言。如此简单,如此强大。:.'tfound.Itwasagoodtime.我记得C语言就是程序员的冒险:有很多小坑,一不小心就陷进去。即便很多年过后,还有一些我没有发现的。那是个美好时刻。Theequationisquitesimple:RichieislikeEinstein,pureGenius.AlltheITisbuiltonK&amp;Rworks.Thanksman,andRIP...等式非常简单:里奇就像爱因斯坦,纯粹的天才。IT业的所有都基于肯贝汉和里奇的成果。感谢,安息……文章出自:nighthacks译文来自:伯乐在线

② java面向对象编程习题,急求答案~用MyEclipse编写 【练习题】08.构造方法的重载:

代码已经上传,自己看看吧,很简单的。有不懂的可以问~~~

③ Java 中islike 和 ==区别

has a 组合
like a / is a 继承。 继承是基于行为相似的。数学里的正方形和矩形在OO里就不能继承。

④ java 怎么对比两个字符串的每个字符

/**
*判断字符串相似
*
*@paramstr1
*比较串
*@paramstr2
*被比较串
*@return
*/
publicstaticbooleanisLike(Stringstr1,Stringstr2){
HashMap<Character,Integer>list=newHashMap<>();
char[]cs1=str1.toCharArray();
char[]cs2=str2.toCharArray();
chartemp;
intcount;
for(inti=0;i<cs1.length;i++){
//取出第一个字符串中的一个字符
temp=cs1[i];
//与第二个字符串的所有字符比较
for(intj=0;j<cs2.length;j++){
//如果字符相同
if(temp==cs2[j]){
//看列表中是否有记录
if(list.get(temp)==null){
//没有记录等于1
list.put(temp,1);
}else{
//有记录即加1
list.put(temp,list.get(temp)+1);
}
}
}
}
Set<Character>set=list.keySet();
for(Characterkey:set){
System.out.println(key+"出现的次数"+list.get(key));
}
if(list.size()==0)
returnfalse;
returntrue;
}

⑤ java中 is a, is like,is kind of 分别代表什么意思

1,is a 顾名思义是“...是一个...”的意思,体现在java里就是继承;
2,is like “...像...”在java里表示的是组合机制;
3,至于is kind of ,我好像没听过,应该和is a一个意思,都是指的继承

⑥ 关于JAVA中数组的一道题 Java is an object oriented progaramming language.I like it.and you.

你好,正好可以体现出String的split方法的作用了,用法如下:

public class test2 {

public static void main(String[] args) {
String str="hello . wowo.oh,yes.no";

String[] result=str.split("[.]");
}
}

⑦ "is a"和"is like a"

呵呵,其实is-a,的意思就是“是一个”,假如子类不扩展父类的话,那么继承就没什么意思了,那么子类和父类就是同一个类。
is like a 像是一个但不是一个,因为子类不但拥有父类的所有可继承的东西,而且拥有自己的私有东西,就像你是你老爸的儿子,所以很多人说,你长得很像你老爸,其实你身上有很多你老爸没有的东西。呵呵,就是这个意思!

⑧ java中like和likes有什么区别

has a 组合 like a / is a 继承。 继承是基于行为相似的。数学里的正方形和矩形在OO里就不能继承。