“如果我们说一种不同的语言,那么我们才会感知到一个有点不同的世界。”
路德文希•文根斯坦 (1889-1951)
虽然java是基于C++基础上的,但是它更是纯粹的面向对象语言。
尽管C++和java都是混种的语言,但是在java领域中,设计者们觉得这种混种不像在C++里那么重要。一个混种的语言允许多种编程风格;说C++是一种混种语言是因为他支持与C语言的向下兼容性。因为C++是C语言的父集,所以包含许多后者不具备的特征,而这些特征会使C++在一些方面过于复杂。
Java语言假定你想做的是只是面向对象的编程。这意着在你能应用之前,你必须将你的思想转入面向对象世界(除非你已经习惯这个世界)。这个初步的利益便是与其他OPP语言性比,java有能力能被人更容易的学习和使用。在这一章,你将看到一个java的基本组成部分,并且能了解到java程序的(几乎)一切都是对象。
你用句柄来操纵对象
每种编程语言在内存中都有它自己的手段操纵元素。有些时候程序员必须时刻注意准备处理的是什么类型。你有直接操纵过元素,或者用来处理一些种类的必须用特殊语法来处理的间接表示的对象吗?
所有的这些在java中都很简单。你能把所有都看做对象,并采用一种统一的语法。虽然你把一切都看做对象,但是你操纵的该标识符实际上是一个指向对象的“句柄”。你可以想象一个电视机(指对象)和一个遥控器(指句柄)。只要你拿着这个遥控器,你就对电视机有了一个联系,但是当有人说“换频道”或者“开轻点”,那你操纵的是遥控器,而这反过来能修改电视机。如果你想在房间里到处走走,并且仍旧控制着电视机,你当时拿的就是遥控器,而并非电视机。
此外,遥控器没有电视机也能独立存在。那就是说,只是因为你有一个句柄,但是这并不意着必须有一个对象与它连接。所以如果你想容纳一个单词或者一句句子,你能创建一个String句柄:
String s;
但是这里你创建的只是句柄,并不是一个对象。如果此时你决定向s发送一个信息,你将会得到一个错误,因为s事实上并未与任何东西连接(这里没有电视)。因此,一个更安全的做法,就是在你创建时经常进行初始化:
String s = "asdf";
然而,这里使用的是一种特殊的java类型:字符串可用带引号的文本初始化。通常的,你必须为对象使用一种更通用的初始化类型。
你必须创建所有的对象本文来自751\文(论"文?网,毕业论文 www.751com.cn 加7位QQ324~9114找原文
当你创建句柄时,你想它同一个新的对象连接。你通常会用new关键字来操作。这个new关键字意思是说,“把我变成这些对象的一个新对象”。所以在上面的例子里,你可以说:
String s = new String("asdf");
这不仅意着“将我变成一个新的字符串”,但它也通过提供一个初始字串,对如何生成这个字符串给出了信息。
当然,java除了字符串还配套提供了众多现成的类型。更重要的是你能自行创建类型。事实上,在java编程中,创建新类型是一个基本操作,并且他是你学习本书剩余内容的基础。
- 上一篇:PLC数控加工工业机械手英文文献和翻译
- 下一篇:机械电子轧机的空间振动英文文献和翻译
-
电站锅炉暖风器设计任务书
java+mysql车辆管理系统的设计+源代码
中考体育项目与体育教学合理结合的研究
杂拟谷盗体内共生菌沃尔...
河岸冲刷和泥沙淤积的监测国内外研究现状
当代大学生慈善意识研究+文献综述
十二层带中心支撑钢结构...
乳业同业并购式全产业链...
大众媒体对公共政策制定的影响
酸性水汽提装置总汽提塔设计+CAD图纸