2008-11-01 104 views
7

过去5年我一直在做C++开发,需要为新工作选择Java。你有任何书籍/网站/等的建议,以帮助我的过渡?学习Java

回答

19

我不认为有一个有经验的程序员想学习Java比Thinking in Java由Bruce Eckel的任何更好的书。

不要让'初学者'语言让你失望。这是顶尖的。

+1

他的名字是布鲁斯埃克尔,而不是布鲁斯埃克尔斯。 – 2008-11-02 02:49:41

3

我建议阅读Bruce Eckles在Java中的Thinking。随后由Wrox出版的Ivor Horton的Beginning Java 2开始。 Beginning Java 2书籍涵盖了Java的大部分内容,并提供了大部分您可能希望尝试作为初学者尝试的代码示例,如解析XML文件等。Thinking in Java book有助于理解C++和Java,你可以很容易地通过它。

14

当您得到Java的感觉后,我会推荐Joshua Bloch的Effective Java

它涉及到Java的具体细节,并提到良好的做法和常见的陷阱。

+0

哦!是的,这是在学习Java基础知识之后学习Java的书。 – Eldelshell 2009-01-05 10:14:13

2

Head First Java来自O'Reilly是一个很好的介绍和一个简单的阅读。既然你已经熟悉面向对象的概念和经验丰富的程序员,那么来自太阳的Java教程可能是最好的开始。

4

Head First Java是学习Java的最好的书。这是对面向对象编程和Java的介绍,所以作为一名经验丰富的程序员,您可能会更好地服务于Thinking in Java

2

Java Concurrency in Practice作者:Brian Goetz是一本关于线程和java.util.concurrent包的出色书籍。如果你正在做任何类型的线程编程,那么这是一个明确的读法。

1

尽管Java Concurrency in Practice具有许多优秀的内容,并且深入讨论了很多事情,但它不是一本简单的书。它写得很随意,除非你已经完成了硬核线程编程,否则很难跟踪。 Java Threads在这些方面要好得多。

+0

真的吗?我认为它的写法非常合乎逻辑,从线程开始,以及它们如何用于协调和锁定以及死锁问题和调试。我在线程中遇到了很多困难,并且发现它很有启发性。这是为了初学者,而不是专家。 – 2008-11-01 22:46:10

1

有在市场上十几本书,这是由旧的C++开发人员,这是现在写的代码在Java中,比如上面提到的Bruce Eckel在Java中的Thinking,Java 2 Ivor Horton Wrox Press也是一个很好的例子。我的一般建议是阅读由一些C++开发人员(如您)制作的书。阅读这些书更直观。

2

Steve Holzner使用了Herbert Schildt的“Java 2 Complete Reference”和“Java Black Book”。

我通过几天阅读参考手册来学习新的语言,然后开始编写它们。

2

当我第一次在学校学习/使用java时,发现Java in a Nutshell是一本非常有用的参考书。我当时也在C/C++中完成了大部分编程工作。然而,我还没有读过这本书的最新版本。我听说它的质量有所下降,但我无法证实,仍然会建议给它一个镜头。最近,我在线使用Java API进行参考。

1

我会强烈建议寻找一些资源,突出Java和C++之间的差异。这非常有用,因为细微的差异可能会让你失望。我自己从C++转移到Java(很久以前)。我花了一段时间来协调一个事实,即不能重写super(base)类的私有方法(函数)。

如果你找不到任何针对C++程序员的Java特定好书,请看看Java Gotchas等。

0

相信与否,那些在21天学习X的书籍帮助我快速学习了基础知识,并将我带入了更高级的书籍和主题。

因此:在21天内学习Java。决不会错过它。我是一名掌握C/C++知识的Pascal开发人员,并且通过本书学习了Java。

此外,请务必尽快将您的手弄脏JDK ASAP !!!实际的体验将让你更加深入地学习Java。

2

另一本值得一提的书是O'Rielly的Learning Java。它提供了一个非常全面的介绍,并成为我事实上的参考书。