2章Jaa语言概述 H FtpClient f client f client=new FtpClient("hostname") flogin("anonymous", " f binary
第2章 Java语言概述 ... FtpClient f_client; f_client=new FtpClient("hostname"); f.login("anonymous",""); f.binary();
H 第2章Jaa语言概述 另外,Java提供一个 Socket类,这个类可以提供可 靠的流式网络连接。这样,我们可以非常方便地创建 分布式的 Client和 Server应用程序。传统的网络编程是 件复杂的事情,但是通过Java提供的网络类库,可 以轻易地构造出网络应用,如客户机/服务器应用,浏 览器/服务器应用,大大简化了工作难度。正如Java的 设计者 Gosling所说,Java的设计就是为了“最大限度 地利用网络
第2章 Java语言概述 另外,Java提供一个Socket类,这个类可以提供可 靠的流式网络连接。这样,我们可以非常方便地创建 分布式的Client和Server应用程序。传统的网络编程是 一件复杂的事情,但是通过Java提供的网络类库,可 以轻易地构造出网络应用,如客户机/服务器应用,浏 览器/服务器应用,大大简化了工作难度。正如Java的 设计者Gosling所说,Java的设计就是为了“最大限度 地利用网络”
2章Jaa语言概述 H 4.解释型 我们知道,Java的编译器产生的是字节代码,可把 它理解为一种中间代码,而不是特定的机器码。该字 节码必须运行在一个解释器上,所以说,JaVa是一种 解释型语言。由于产生的是中间代码—字节代码,因 而可达到与平台无关的目的,从而可高效地在不同平 台之间传输。同时,该程序可在任何平台上运行,只 要这个平台上安装了Java解释器和运行系统即可 在解释环境中,程序开发过程中标准的“链接” 过程没有了,Java的“链接”实际上是把一个新类加 载到当前的环境中,这和传统的程序开发过程中的编 译、链接、测试有较大的区别
第2章 Java语言概述 4.解释型 我们知道,Java的编译器产生的是字节代码,可把 它理解为一种中间代码,而不是特定的机器码。该字 节码必须运行在一个解释器上,所以说,Java是一种 解释型语言。由于产生的是中间代码——字节代码,因 而可达到与平台无关的目的,从而可高效地在不同平 台之间传输。同时,该程序可在任何平台上运行,只 要这个平台上安装了Java解释器和运行系统即可。 在解释环境中,程序开发过程中标准的“链接” 过程没有了,Java的“链接”实际上是把一个新类加 载到当前的环境中,这和传统的程序开发过程中的编 译、链接、测试有较大的区别
H 第2章Jaa语言概述 5.健壮性 分布式计算环境要求软件具有高度的健壮性。C++ 程序员都知道其在稳定性方面的最大问题在于指针的使 用和缺乏自动的内存管理。这使得程序员可能编写出在 语法和语义上均正确,但却可能对系统产生巨大破坏作 用的软件。Java是一种比C+还强的强壮型语言。它要 求显式的方法声明,保证编译器可以发现方法调用错误 Gosling认为指针的主要作用在于数组和结构的访问及使 用。Java的数组可以解决前者的问题,但加强了对数组 下标的检查。结构的访问和使用可通过类及类的方法访 问变量解决,因而可以取消指针的概念
第2章 Java语言概述 5.健壮性 分布式计算环境要求软件具有高度的健壮性。C++ 程序员都知道其在稳定性方面的最大问题在于指针的使 用和缺乏自动的内存管理。这使得程序员可能编写出在 语法和语义上均正确,但却可能对系统产生巨大破坏作 用的软件。Java是一种比C++还强的强壮型语言。它要 求显式的方法声明,保证编译器可以发现方法调用错误。 Gosling认为指针的主要作用在于数组和结构的访问及使 用。Java的数组可以解决前者的问题,但加强了对数组 下标的检查。结构的访问和使用可通过类及类的方法访 问变量解决,因而可以取消指针的概念
H 第2章Jaa语言概述 Java语言稳定性的另一个方面是自动的内存管理。 用过C/C+的读者知道,比如我们可以调用函数 mallock来进行内存的分配,但在使用完后,必须要对 占用的资源进行释放,即再调用feeO函数释放掉分配 的内存,如果稍不小心,就可能造成系统故障或空间 的浪费。Java中专门有一个后台垃圾自动收集程序 Garbage Collector。它以较低的线程优先级对存储器进 行扫描,自动释放掉不再使用的存储碎片,从而使程 序员不用再担心内存的使用,只是专注于程序的设计
第2章 Java语言概述 Java语言稳定性的另一个方面是自动的内存管理。 用过C/C++的读 者知 道,比 如我 们可以 调用 函数 malloc()来进行内存的分配,但在使用完后,必须要对 占用的资源进行释放,即再调用free()函数释放掉分配 的内存,如果稍不小心,就可能造成系统故障或空间 的浪费。Java中专门有一个后台垃圾自动收集程序—— Garbage Collector。它以较低的线程优先级对存储器进 行扫描,自动释放掉不再使用的存储碎片,从而使程 序员不用再担心内存的使用,只是专注于程序的设计 即可