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处理器来实现。
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编程思想第四版——第二十一天
2012-05-04 12:56 5772012-05-04 163-170/913 Java编 ... -
Java编程思想第四版——第二十天
2012-05-03 13:45 7022012-05-03 158-163/913 Java编程思 ... -
Java编程思想第四版——第十九天
2012-05-02 11:08 8162012-05-02 149-158/913 Java编程思 ... -
Java编程思想第四版——第十八天
2012-04-27 13:12 10022012-04-27 142-149/913 Java编 ... -
Java编程思想第四版——第十七天
2012-04-25 11:18 7422012-04-25 138-142/913 Java编程思 ... -
Java编程思想第四版——第十六天
2012-04-24 13:50 7502012-04-24 131-138/913 Java编 ... -
Java编程思想第四版——第十五天
2012-04-23 17:14 7542012-04-23 121-131/913 Java编程思 ... -
Java编程思想第四版——第十四天
2012-04-19 11:28 6252012-04-19 118-121/913 Java编程思 ... -
Java编程思想第四版——第十三天
2012-04-18 12:08 6662012-04-18 108-118/913 Java编 ... -
Java编程思想第四版——第十二天
2012-04-09 10:58 7342012-04-09 102-108/913 Java编 ... -
Java编程思想第四版——第十一天
2012-04-05 12:21 8192012-04-05 Java编程思想第四版——第十一天 ... -
Java编程思想第四版——第十天
2012-03-31 12:03 5582012-03-31 97-102/913 Java编程思想 ... -
Java编程思想第四版——第九天
2012-03-30 14:59 6512012-03-30 80-97/913 Java编程思想第 ... -
Java编程思想第四版——第八天
2012-03-29 12:09 4822012-03-29 76-80/913 3.6 自动递增和 ... -
Java编程思想第四版——第七天
2012-03-28 12:24 6562012-03-28 70-76/913 昨天找 ... -
Java编程思想第四版——第六天
2012-03-27 13:02 5282012-03-27 66-70/913 最近两 ... -
Java编程思想第四版——第四天
2012-03-22 12:41 5892012-03-22 54-60/913 第二章 ... -
Java编程思想第四版——第三天
2012-03-21 12:40 5682012-03-21 47-54/913 1.12 并 ... -
Java编程思想第四版——第二天
2012-03-20 13:54 729今天本来以为进度可以 ... -
Java编程思想第四版——第一天
2012-03-19 15:57 784Java已经丢手一年了 ...
相关推荐
《Thinking in Java》是Bruce Eckel创作的一部Java编程经典著作,英文版的第四版更是深受全球程序员喜爱的参考资料。这本书全面深入地介绍了Java语言,不仅适合初学者,也对有经验的程序员提供了宝贵的洞见。它以...
《Java编程思想》是 Bruce Eckel 的经典著作,第四版更是深受广大Java程序员喜爱。这本书深入浅出地讲解了Java语言的核心概念和技术,包括面向对象编程、类与对象、继承与多态、接口、异常处理、集合框架、泛型、...
《Java编程思想》第四版是一本经典的Java编程书籍,由Bruce Eckel编写,全面而深入地介绍了Java语言。该书被广泛认可为学习Java语言的重要资源,尤其适合有一定编程基础,希望深入理解Java及其编程范式的读者。 ## ...
第四版在原有的基础上进行了更新,加入了更多现代Java特性,如泛型、枚举、集合框架等。 1. **面向对象编程**:Java是一种纯面向对象的语言,理解类、对象、接口以及它们之间的关系至关重要。类是对象的蓝图,通过...
### Java编程思想第三版核心知识点解析 #### 一、引言 《Java编程思想》作为一本备受推崇的经典著作,自问世以来便深受广大Java开发者喜爱。本书由Bruce Eckel撰写,以其独特的视角和深入浅出的讲解方式,帮助无数...
### 《用Java思考》第四版 —— Bruce Eckel 著 #### 书籍概述 本书为《用Java思考》的第四版,作者是Bruce Eckel,MindView公司的总裁。这本书自出版以来就受到了广大Java程序员的高度评价。本书并非扫描版本,...
### Java编程思想:掌握复杂度的艺术 #### 一、引言:从硬件到软件的革命 在《Thinking In Java 3rd》一书中,作者Bruce Eckel深入探讨了Java编程语言如何改变了软件开发领域的面貌。起初,Eckel对计算机革命的...
《算法(第四版)标准库——algs4.zip深度解析》 在计算机科学领域,算法是解决问题的关键。《算法(第四版)》是由Robert Sedgewick和Kevin Wayne合著的一本经典教材,它深入浅出地讲解了各种基础及高级算法,并...
第四版作为最新的版本,涵盖了从基础语法到高级特性的全面内容,旨在帮助读者理解并掌握Java编程的精髓。这本书的练习题是检验学习成果、提升编程技能的重要途径。以下是对这些练习题答案的一些关键知识点的解析: ...
- **第四章:树** —— 深入讨论了树的各种类型(如二叉树、平衡树等)及其操作,如遍历、插入和删除。 - **第五章:散列** —— 介绍了散列表的工作原理、散列函数的设计以及处理冲突的方法。 - **第六章:优先队列...
### 《Thinking in Java》——Java编程思想精粹 #### 一、书籍简介与评价 《Thinking in Java》是Java编程领域中的一本经典之作,由资深程序员Bruce Eckel撰写,自出版以来就受到了广大读者的高度评价。本书被誉为...
- **Java编程语言**:这是Java技术的基础,涉及语法、数据类型、控制结构等内容。 - **Java类文件格式**:深入了解Java编译后的字节码格式,有助于理解程序运行机制。 - **Java虚拟机(JVM)**:掌握JVM的工作原理,...
通过以上五个星期的学习与实践,不仅掌握了Java编程的基础知识,还深入了解了面向对象编程的思想与高级特性,并通过实际项目加深了对技术的理解与运用能力。这样的实习经历对于成为一名合格的Java开发者至关重要。
Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程思想,使得代码更加模块化、可维护和可重用。张亦辉版的教材是许多初学者和专业人士学习这一主题的参考资料。该压缩包包含了该教材1-10章的...
- **类与对象**:第五章介绍了面向对象程序设计的核心概念——类和对象。 - **继承与多态性**:第七章探讨了继承机制以及多态性的概念,这些都是面向对象编程的重要特征。 - **接口与程序包**:第八章讲解了接口...