`
凌紫冥
  • 浏览: 25500 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java编程思想第四版——第五天

    博客分类:
  • Java
 
阅读更多
2012-03-23
60-66/913

2.5 方法、参数和返回值
C和C++用函数描述命名子程序,java用方法表示“做某些事情的方式”。
Java的方法决定了一个对象能接收什么样的消息。
方法基本组成部分:名称、参数、返回值、方法体
ReturnType methodName(/*Argument list*/){
/* Method body */
}

返回类型:调用方法之后从方法返回的值
参数列表:给出了要传给方法的信息的类型和名称
方法名和参数列表(合起来称为“方法签名”)唯一地标识出某个方法。
Java中方法只能作为类的一部分来创建,只能通过对象才能被调用,且这个对象必须能执行这个方法调用。调用方法:先列出对象名,句点,然后方法名和参数列表。
objectName.methodName(arg1, arg2, arg3);

调用方法的行为被称为发送消息给对象,面向对象程序设计通常简单的归纳为“向对象发送消息”。

2.5.1 参数列表
参数列表指定要传递给方法什么样的信息。
参数列表中必须指定每个所传递对象的类型及名字。
Java中任何传递对象的场合一样,传递的实际上是引用(基本类型除外),引用的类型必须正确。

Return关键字的用法:首先,代表“已经做完,离开此方法”。其次,如果此方法产生了一个值,这个值要放在return语句后面。

可以定义方法返回任意想要的类型,不想返回任何值,可以提示此方法返回void(空)。若返回类型是void,return关键字的作用只是用来退出方法。因此,没有必要到方法结束时才离开,可在任何地方返回。如果返回类型不是void,那么无论在何处返回,编译器都会强制返回一个正确类型的返回值。

2.6 构建一个java程序

2.6.1 名字可见性
名字管理,重要问题。
C++通过几个关键字引入名字空间概念。
Java采用反转域名,非强制,反转域名后,句点用来代表子目录的划分。所有文件都能够自动存活与它们自己的名字空间内,同一个文件内的每个类都有唯一的标识符,java语言本身解决了名字管理问题。

2.6.2 运用其他构件
Java消除了“向前引用”的问题,可以直接使用发出调用的那个源文件中的类,即使这个类在文件的后面才会被定义。

调用位于其他文件中的类,用import关键字来准确告诉编译器想要的类是什么。Import指示编译器导入一个包,也就是一个类库。(其他语言中,一个库不仅包含类,还可能包括方法和数据,java中所有代码都必须写在类中。)

一次导入一群类:想要使用util中的几个类,不想明确逐一声明,可以使用通配符*达到目的。
import java.util.*;

2.6.3 static关键字
两种情形使用static关键字:一,只想为某特定域分配单一存储空间,而不去考虑究竟要创建多少对象,甚至根本就不创建任何对象。二,希望某个方法不与包含它的类的任何对象关联在一起,即使没有创建对象,也能够调用这个方法。
只需将static关键字放在定义之前,就可以将字段或方法设定为static。
class StaticTest{
static int i = 47;
}
StaticTest st1 = new StaticTest();
StaticTest st2 = new StaticTest();
创建两个StaticTest 对象,StaticTest.i也只有一份存储空间,两个对象共享同一个i。
st1.i和st2.i指向同一存储空间。
引用static变量有两种方法:通过一个对象去定位它,如st2.i。也可以通过类名直接引用,非静态成员不能这样调用。使用类名是引用static变量的首选方式,不仅强调了变量的static结构,而且在某些情况下还为编译器进行优化提供了更好的机会。静态方法与静态变量类似。

Static作用于某个字段,会改变数据创建的方式(一个static字段对每个类来说都只有一份存储空间,非static字段则是对每个对象都有一个存储空间),但static作用于某个方法,差别却没有那么大。Static方法的一个重要用法就是在不创建任何对象的前提下就可以调用它。这一点对定义main()方法很重要,这个方法是运行一个应用时的入口点。

和其他任何方法一样,static方法可以创建或使用与其类型相同的被命名对象,因此,static方法常常拿来做“牧羊人”的角色,负责看护与其隶属同一类型的实例群。

2.7 你的第一个java程序
每个程序文件开头,必须声明import语句,以便引入在文件代码中需要用到的额外类。有一个特定类会自动被导入到每一个java文件中:java.lang。java.lang默认导入到每个java文件中,它的所有类都可以直接使用。

System.out.println();将数据打印到控制台,完成后换行。

类的名字必须和文件名相同,如果创建一个独立运行的程序,文件中必须存在某个类与该文件同名(否则,编译器会报错),且那个类必须包含一个名为main()的方法。
public static void main(String [] args){}
这个程序中没有用到args,但是java编译器要求必须这样做,因为args要用来存储命令行参数。

Java最强大的优势之一就是它具有庞大的标准类库集。

2.7.1 编译和运行
要编译、运行程序,首先必须要有一个java开发环境。比如SUN的JDK。
安装好JDK后,需要设定好路径信息,确保计算机能找到javac和java这两个文件。
build.xml文件,提供一个ant命令,用于自动构建每章的所有文件。安装好ant,便可直接在命令行提示符下键入ant来编译和运行每一章的程序了。可以手工键入javac和java命令安装。

2.8 注释和嵌入式文档
Java两种注释风格:一种是传统的C语言风格的注释——C++也继承了这种风格。例:/* 开始,随后是注释内容,可跨越多行,最后以*/结束。编译时,/*和*/之间的所有东西都会被忽略。第二种风格的注释源于C++,单行注释,以一个“//”起头,知道句末。

2.8.1 注释文档
代码文档撰写的最大问题,大概就是对文档的维护了。如果文档与代码是分离的,那么在每次修改代码时,都需要修改相应的文档,这是相当乏味的一件事。解决方法:将代码同文档“链接”起来,将所有东西都放在同一个文件内,使用一种特殊的注释语法标记文档,用javadoc提取注释,并转换成有用的形式。Javadoc是JDK安装的一部分,采用java编译器的某些技术,查找程序内的特殊注释标签,解析标签标记的信息,将毗邻注释的类名或方法名抽取出来,如此,就可以用最少的工作量,生成相当好的程序文档。
Javadoc输出的是一个HTML文件。想对javadoc处理过的信息执行特殊的操作(例如,产生不同格式的输出),那么可以通过编写自己的被称为“doclets”的javadoc处理器来实现。
分享到:
评论

相关推荐

    java 编程思想 英文版 第四版(非扫描pdf)

    《Thinking in Java》是Bruce Eckel创作的一部Java编程经典著作,英文版的第四版更是深受全球程序员喜爱的参考资料。这本书全面深入地介绍了Java语言,不仅适合初学者,也对有经验的程序员提供了宝贵的洞见。它以...

    java变成思想第四版中文版 练习题答案

    《Java编程思想》是 Bruce Eckel 的经典著作,第四版更是深受广大Java程序员喜爱。这本书深入浅出地讲解了Java语言的核心概念和技术,包括面向对象编程、类与对象、继承与多态、接口、异常处理、集合框架、泛型、...

    java编程第4版完整版,完整书签,扫描但文字可搜索复制

    《Java编程思想》第四版是一本经典的Java编程书籍,由Bruce Eckel编写,全面而深入地介绍了Java语言。该书被广泛认可为学习Java语言的重要资源,尤其适合有一定编程基础,希望深入理解Java及其编程范式的读者。 ## ...

    Java编程思想全面的答案

    第四版在原有的基础上进行了更新,加入了更多现代Java特性,如泛型、枚举、集合框架等。 1. **面向对象编程**:Java是一种纯面向对象的语言,理解类、对象、接口以及它们之间的关系至关重要。类是对象的蓝图,通过...

    thinking in java第三版简体中文

    ### Java编程思想第三版核心知识点解析 #### 一、引言 《Java编程思想》作为一本备受推崇的经典著作,自问世以来便深受广大Java开发者喜爱。本书由Bruce Eckel撰写,以其独特的视角和深入浅出的讲解方式,帮助无数...

    Thinking in Java -- 4th Edition

    ### 《用Java思考》第四版 —— Bruce Eckel 著 #### 书籍概述 本书为《用Java思考》的第四版,作者是Bruce Eckel,MindView公司的总裁。这本书自出版以来就受到了广大Java程序员的高度评价。本书并非扫描版本,...

    Thinking In Java 3rd

    ### Java编程思想:掌握复杂度的艺术 #### 一、引言:从硬件到软件的革命 在《Thinking In Java 3rd》一书中,作者Bruce Eckel深入探讨了Java编程语言如何改变了软件开发领域的面貌。起初,Eckel对计算机革命的...

    algs4.zip算法(第四版)标准库

    《算法(第四版)标准库——algs4.zip深度解析》 在计算机科学领域,算法是解决问题的关键。《算法(第四版)》是由Robert Sedgewick和Kevin Wayne合著的一本经典教材,它深入浅出地讲解了各种基础及高级算法,并...

    Thinking in java第4版练习题答案

    第四版作为最新的版本,涵盖了从基础语法到高级特性的全面内容,旨在帮助读者理解并掌握Java编程的精髓。这本书的练习题是检验学习成果、提升编程技能的重要途径。以下是对这些练习题答案的一些关键知识点的解析: ...

    数据结构与算法分析_java语言描述课后答案(英文)

    - **第四章:树** —— 深入讨论了树的各种类型(如二叉树、平衡树等)及其操作,如遍历、插入和删除。 - **第五章:散列** —— 介绍了散列表的工作原理、散列函数的设计以及处理冲突的方法。 - **第六章:优先队列...

    thinking in JAVA

    ### 《Thinking in Java》——Java编程思想精粹 #### 一、书籍简介与评价 《Thinking in Java》是Java编程领域中的一本经典之作,由资深程序员Bruce Eckel撰写,自出版以来就受到了广大读者的高度评价。本书被誉为...

    Java程序员面试宝典.pdf

    - **Java编程语言**:这是Java技术的基础,涉及语法、数据类型、控制结构等内容。 - **Java类文件格式**:深入了解Java编译后的字节码格式,有助于理解程序运行机制。 - **Java虚拟机(JVM)**:掌握JVM的工作原理,...

    java实习周记篇编程资料

    通过以上五个星期的学习与实践,不仅掌握了Java编程的基础知识,还深入了解了面向对象编程的思想与高级特性,并通过实际项目加深了对技术的理解与运用能力。这样的实习经历对于成为一名合格的Java开发者至关重要。

    java面向对象程序设计 课本源码(全)

    Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程思想,使得代码更加模块化、可维护和可重用。张亦辉版的教材是许多初学者和专业人士学习这一主题的参考资料。该压缩包包含了该教材1-10章的...

Global site tag (gtag.js) - Google Analytics