接触过C语言的同学,这小章节很容易接受。Java中的方法是类似与C语言中的函数  功能和调用方法都类似  只不过叫法不一样  因为java是面向对象  c是面向过程    仅仅是叫法不同。。 。

看到15章节的同学,应该都会话矩形吧,现在先看一下在不使用方法时如何实现打印三个长宽不同的矩形,代码如下:

public class Rectangle01 {
public static void main(String[] args) {
// 下面的循环是使用*打印一个宽为5、高为3的矩形
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
// 下面的循环是使用*打印一个宽为4、高为2的矩形
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 4; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
// 下面的循环是使用*打印一个宽为10、高为6的矩形
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 10; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
}
}

结果如下图:

上面的代码分别使用了三个嵌套for循环完成了三个矩形的打印,仔细观察会发现,这三个嵌套for循环的代码是重复的,都在做一样的事情,此时,就可以将使用“ * ”打印矩形的功能定义为方法,在程序中调用三次即可,修改后代码如下:

public class Rectangle02 {
public static void main(String[] args) {
printRectangle(3, 5); // 调用 printRectangle()方法实现打印矩形
printRectangle(2, 4);
printRectangle(6, 10);
}
// 下面定义了一个打印矩形的方法,接收两个参数,其中height为高,width为宽
public static void printRectangle(int height, int width) {
// 下面是使用嵌套for循环实现*打印矩形
for (int i = 0; i < height; i++) {
for (int j = 0; j < width; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
}
}

结果如下:

运行结果还是一样。

Java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,声明格式为:

         [修饰符1  修饰符2  …..] 返回值类型  方法名( 形式参数列表 ){

                   Java 语句;… … …

}

语法解释:

  1. 形式参数:在方法被调用时用于接收外界输入的数据。
  2. 实参:调用方法时实际传给方法的数据。
  3. 返回值:方法在执行完毕后返回给调用它的环境的数据。
  4. 返回值类型:事先约定的返回值的数据类型,无返回值,必须给出返回类型viod。
    1. Java语言中使用下述形式调用方法:对象名.方法名(实参列表)
    2. 实参的数目、数据类型和次序必须和所调用方法声明的形式列表匹配。
    3. return语句中止方法的运行并指定要返回的数据。
 

Java中进行函数调用中传递参数时,遵循传递的原则:

基本类型传递的是该数据本身,引用类型传递的是对象的引用,不是对象本身

JAVA_SE基础——16.方法的更多相关文章

  1. JAVA_SE基础——18.方法的递归

    方法的递归是指在一个方法的内部调用自身的过程,递归必须要有结束条件,不然就会陷入无限递归的状态,永远无法结束调用,接下来用一个最简单的例子来体现下方法递归,使用递归算法计算自然数之和: public ...

  2. JAVA_SE基础——17.方法的重载

    方法重载: 方法重载就是方法名称重复,加载参数不同. 具体规范: 一.方法名一定要相同. 二.方法的参数表必须不同,包括参数的类型或个数,以此区分不同的方法体. 1.如果参数个数不同,就不管它的参数类 ...

  3. JAVA_SE基础——8.基本数据类型

    基本数据类型有:整数类型.浮点类型.字符类型.布尔类型 整数类型 整数类型用来存储整数数值,即没有小数部分的数值.与C.C++语言相同,整数在Java语言中有3种表示形式:十进制.八进制和十六进制. ...

  4. JAVA_SE基础——6.标识符&关键字

    学会写helloworld之后,  我们就开始来认识标识符&关键字 一.标识符 标识符是指可被用来为类.变量或方法等命名的字符序列,换言之,标识符就是用户自定义的名称来标识类.变量或方法等.更 ...

  5. [.net 面向对象编程基础] (16) 接口

    [.net 面向对象编程基础] (16) 接口 关于“接口”一词,跟我们平常看到的电脑的硬件“接口”意义上是差不多的.拿一台电脑来说,我们从外面,可以看到他的USB接口,COM接口等,那么这些接口的目 ...

  6. JAVA_SE基础——26.[深入解析]局部变量与成员变量的区别

    黑马程序员入学blog ... 如果这章节很难懂的话应该返回去先看  JAVA_SE基础--10.变量的作用域 定义的位置上区别: 1. 成员变量是定义在方法之外,类之内的. 2. 局部变量是定义在方 ...

  7. JAVA_SE基础——9.基本数据类型间的转换

    前面我已经教会大家基本的数据类型进行了介绍,   然后这篇文章,我来介绍下,基本数据类型的转换. Java中有两种类型转换形式,分别是自动类型转换和强制类型转换. Step1.自动类型转换. 自动类型 ...

  8. JAVA_SE基础——7.常量&变量

    上一篇,我讲了标识符&关键字    这篇我来解释下变量&常量~~~ 变量与常量这两个概念相信大家都不会感到陌生,在数学中就已经涉及了变量与常量.理解变量与常量,可以举这样一个例子: 例 ...

  9. JAVA_SE基础——4.path的临时配置&Classpath的配置

    这次,我来写下关于path的临时配置的心的 我来说个有可能的实例:如果你去到别人的电脑 又想写代码 又不想改乱别人的path配置的话  再说别人愿意你在别人的电脑上瞎配吗? 那该怎么办呢? 那没问题 ...

随机推荐

  1. 1.Docker是什么?

    Docker官网是这样解释的: Docker is the company driving the container movement and the only container platform ...

  2. 4.2 js没有块级作用域

    JavaScript没有块级作用域.在其他语言上,比如C语言中,有花括号封闭的代码块都有自己的作用域,(如果用ECMAScript的话来讲,就是他们自己的执行环境),因而支持根据条件来定义变量.例如, ...

  3. log4net应用实践(一)

          1.背景 log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台.文件.数据库等)的工具.它是.Net下一 ...

  4. PAT乙级-1041. 考试座位号(15)

    每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座 ...

  5. 那些年踩过的WebAPI的坑(一)

    ---恢复内容开始--- Visual Studio创建一个web项目, 在下一步的时候创建WebAPI项目的时候勾选web API之后,系统会生成一个web项目. 首先看一下webapi的路由配置, ...

  6. 聊聊Linux用户态驱动设计

    序言 设备驱动可以运行在内核态,也可以运行在用户态,用户态驱动的利弊网上有很多的讨论,而且有些还上升到政治性上,这里不再多做讨论.不管用户态驱动还是内核态驱动,他们都有各自的缺点.内核态驱动的问题是: ...

  7. 写了个批量查询qs的软件

    因为需要,自己写了个批量查询qs的小软件.从网站中抓出需要的数据,格式化显示: 对字符串进行检测处理,先用Replace函数去掉字符串的空格,再用正则表达式匹配,返回匹配的字符串,如果没有匹配,则返回 ...

  8. Linux乱码问题解决

    语言设置常用命令 # echo $LANG # locale # LANG=zh_CN.UTF-8 # LANG=en   Centos6中文语言包的设置 安装CentOS时选择了中文,但在终端不能显 ...

  9. HTTP 0.9 HTTP 1.0 HTTP 1.1 HTTP 2.0区别

    HTTP协议 :Hyper Text Transfer Protocol(超文本传输协议),是用于从万维网(WWW:World Wide Web)服务器传输超文本到本地浏览器的传送协议.是互联网上应用 ...

  10. 笔记:XML-解析文档-XPath 定位信息

    如果需要定位某个XML文档中的一段特定信息,那么通过遍历DOM 树的众多节点来进行行查找显得有些麻烦,XPath语言使得访问树节点变得很容易,例如,下面的XML文档结构: <?xml versi ...