方法的概念

方法就是将功能重复的代码封装成一段独立的小程序,通过调用方法的方式以提高代码的复用性(减少代码重复)

int year = 2020;

if ( year % 4 == 0 &&

year % 100 != 0 || year % 400 == 0) {

System.out.println(year + "是闰年!");

}

year = 2052;

if ( year % 4 == 0 &&

year % 100 != 0 || year % 400 == 0) {

System.out.println(year + "是闰年!");

}

当需要判断两个年份是否为闰年时,以上代码存在代码重复。

方法的定义

返回值类型 方法名 (参数类型 形式参数1,参数类型 形式参数2,…) {

执行语句块;

return 返回值;

}

返回值类型: 方法输出数据的类型(如果方法没有返回值,则用关键字 void 来表示)

方法名:类似变量名,可以自定义方法名(需符合 Java 标识符规则)

形式参数:变量(用于存储调用方法输入的数据)

实际参数:调用方法输入的数据

返回值:调用方法返回的数据

注意:main 方法是一个特殊方法,它是程序的入口方法,执行程序时会 JVM 会调用 main 方法。

案例

获取 2 个整数中的较大的数

public static int getMax(int left, int right) {

int max = 0;

if (left > right) {

max = left;

} else {

max = right;

}

return max;

}

方法的调用

方法中可以调用其他方法

方法中不能嵌套定义方法

int numA = 20;

int numB = 30;

int max = getMax(numA, numB); //调用定义的 getMax 方法,并将返回值赋给 max 变量

局部变量

局部变量指在方法中声明的变量,其作用范围仅限于方法中(局部变量在使用前必须进行初始化)

局部变量的特点

生存时间:局部变量的生存时间和方法的生存时间一致,调用该方法声明该局部变量并初始化的时,该局部变量被创建并分配内存空间;直到该方法调用结束局部变量也就结束

是否需要初始化:局部变量在使用前必须进行初始化,系统默认不会对局部变量进行初始化数据操作,如果局部变量在使用前没有进行初始化则会在编译器报错;如果局部变量进行了声明没有进行初始化, 但是也一直没有被使用的话编译也是不会报错的

创建位置: 局部变量是创建在内存的栈区中

注意:main 方法也是方法,所以定义在 main 方法中的变量也是局部变量

形参与实参

形参:方法中定义的数据类型变量

实参:调用方法输入的变量或常量值

形参与实参是具有相同数据类型的不同变量,都存储于内存的栈区

内存划分

Java 内存划分区域:

栈区:变量(基本类型变量和引用类型变量)

堆区:对象(new 引用类型)

注意:内存划分为不同的区域,目的是便于数据的存储,提高同一类型数据的存取效率

方法的重载

方法的重载指的是在同一个类中,有一个以上的同名方法,但方法的参数个数或参数类型有所不同(与方法的返回值无关)

方法的重载存在的原因:为了增强方法的阅读性,优化程序设计

java 方法 时间_Java 方法相关推荐

  1. java compare时间_java.time.LocalDateTime compareTo()方法

    java.time.LocalDateTime compareTo()方法 java.time.LocalDateTime.compareTo(ChronoLocalDateTime other)方法 ...

  2. java 获取时间的方法

    Java的时间是通过字节码指令来控制的,所以 java程序的运行时间是通过字节码指令来控制的.但是由于 Java程序在运行时, JVM会产生一些状态,所以在执行 JVM指令时, JVM也会产生一些状态 ...

  3. java 默认参数_Java 方法的参数可以有默认值吗?

    Java 方法的参数可以有默认值吗? 例如 void method(String p1, int p2, bool p3=false); 回答 Java不支持这种特性, 如果你真的有需求,你可以 通过 ...

  4. java 静态绑定原理_Java方法的静态绑定与动态绑定讲解

    一:绑定 把一个方法与其所在的类/对象 关联起来叫做方法的绑定.绑定分为静态绑定(前期绑定)和动态绑定(后期绑定). 二:静态绑定 静态绑定(前期绑定)是指:在程序运行前就已经知道方法是属于那个类的, ...

  5. java实验楼使用说明_Java 方法

    Java 方法 一.实验介绍 1.1 实验内容 本实验将学习Java方法的定义与语法规则.方法重载以及参数与返回值的相关内容. 1.2 实验知识点 方法的定义 方法重载 参数与返回值 1.3 实验环境 ...

  6. java传递实例_Java方法的参数传递机制实例详解

    本文实例讲述了Java方法的参数传递机制.分享给大家供大家参考,具体如下: 参数传递机制 对于程序设计语言来说,一般方法(函数)的参数传递有两种:按值传递和按引用传递. 按值传递意味着当将一个参数传递 ...

  7. java 方法绑定_java 方法调用绑定

    将一个方法调用同一个方法主体关联起来被称为绑定. 若在程序执行前期进行绑定(如果有的话,由编译器和连接程序实现),叫做前期绑定. 当编译器只有一个引用时,它无法知道究竟调用哪个方法才对,解决的办法就是 ...

  8. java方法头_java方法学习

    java方法学习 方法概念 什么是方法 方法就是完成某些事情的过程,如:实现两个数相加,用方法add(数值1,数值2). 1.System.out.print(),System是系统的一个类,out是 ...

  9. java永久区_Java方法区和永久代

    目前有三大Java虚拟机:HotSpot,oracle JRockit,IBM J9. JRockit是oracle发明的,用于其WebLogic服务器,IBM JVM是IBM发明的用于其Websph ...

最新文章

  1. 嘿,老李,又在写 BUG 呢?
  2. Css布局系列-综合应用
  3. 数据库-优化-从慢查询日志中分析索引使用情况及pt-find
  4. centos查看当前目录下文件大小_centos Linux 统计某个文件夹占用空间大小
  5. java file ip_java常用工具类 IP、File文件工具类
  6. Spring3系列7- 自动扫描组件或Bean
  7. Linux下生成指定大小文件(命令+Java程序)
  8. jQuery.Autocomplete 自动完成
  9. 滴滴“负重”387天
  10. Jquery和JS获取ul中li标签
  11. 英文密码特殊字符大全
  12. 一道求极值的三角函数题
  13. java中美元符号的作用_$美元符号在配置文件中的意义
  14. 在linux下成功写Bingo游戏
  15. 笔记本电脑频繁假死的一个解决办法
  16. 解决Linux系统centos7的开机报错:Welcome to emergency mode
  17. dbavear 连接hive
  18. MySQL语法笔记(自用)
  19. bat打开网页10秒后关闭
  20. layui文件上传(头像上传)

热门文章

  1. 被遗忘的 Mozilla?
  2. 《CSDN好师父》给你更好选择:“深圳工资、长沙房价、全球视野”
  3. 首届“马栏山杯”国际音视频算法优化大赛颁奖盛典暨高峰论坛圆满落幕
  4. 统信 UOS 适配支持百度飞桨 AI 深度学习平台;阿里回应“马云遭印度法院传唤”;fastjson 1.2.73 发布 | 极客头条
  5. Python 10 行以内代码能有什么高端操作?| 原力计划
  6. 3 万字 51 张图教你 CPU、内存、操作系统硬核知识!
  7. 2020 年,远程办公太难?技术大佬齐支招!
  8. @程序员,除了女朋友你还要带什么回去?
  9. 程序员为什么要懂物联网?
  10. 字节跳动自研重度游戏;中国移动前董事长谈飞信失败;Linux 5.3-rc3 发布 | 极客头条...