1.方法定义的格式

  方法就是完成特定功能的代码块

  修饰符 返回值类型 方法名(参数类型 参数名1, 参数类型 参数名2...){

    方法体;

    return 返回值;

  }

  修饰符:

    初学者只需记住public static

  返回值类型:

    用于限定返回值数据类型

  方法名:

    一个名字,方便我们调用方法

  参数类型:

    用于接受调用方法时传入的数据的类型

  参数名:

    用于接收调用方法时传入的数据的变量

  方法体:

    完成功能的代码

  return:

    结束方法,把返回值带给调用者

2.调用方法的三种方式:

  a.单独调用
    方法名()
  b.打印调用
    System.out.println(方法名())
  c.赋值调用
    方法名(参数1,参数2...)

3.方法的注意事项:

  a.方法应该定义在类中,但是不能在方法中再定义方法
  b.方法的定义顺序无所谓
  c.方法定义之后不会自己执行,只有调用才会执行
  d.如果方法由返回值,必须有return
  f.return后边的返回值类型与方法定义的返回值类型相同
  g.对于void类型,最后的return可以省略
  h.一个方法中可以有多个return语句,但是必须保证只有一个能被执行到

4.break,continue和return的区别

  break:只能用在switch和循环中,表示结束这个循环
  continue:只能用在循环中,表示跳过此次循环,继续下一个循环
  return:用在方法中,表示此方法到此结束

5.方法重载的概述和基本使用

  在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。

  方法重载特点:

    a.与返回值类型无关,只看方法名和参数列表

    b.在调用时,虚拟机通过参数列表的不同来区分同名方法

/*
* 需求:比较两个数据是否相等。参数类型分别为两个byte类型,两个short类型,两个int类型,两个long类型,
* 并在main方法中进行测试
*/
public class MethodTest {
public static void main(String[] args) {
// 调用
System.out.println(compare(10, 20));
System.out.println("-------------");
System.out.println(compare((byte)10, (byte)20));
System.out.println("-------------");
System.out.println(compare((short)10, (short)20));
System.out.println("-------------");
//System.out.println(compare((long)10, (long)20));
System.out.println(compare(10L, 20L));
} // 两个byte类型的
public static boolean compare(byte a, byte b) {
System.out.println("byte");
// 第一种写法
// boolean flag = a==b?true:false;
// return flag;
// 第二种写法
// boolean flag = a == b;
// return flag;
// 第三种写法
return a == b;
} // 两个short类型的
public static boolean compare(short a, short b) {
System.out.println("short");
return a == b;
} // 两个int类型的
public static boolean compare(int a, int b) {
System.out.println("int");
return a == b;
} // 两个long类型的
public static boolean compare(long a, long b) {
System.out.println("long");
return a == b;
}
}

6.方法中参数传递

  a.方法的形式参数为基本数据类型

     形式参数的改变不影响实际参数。

    形式参数:用于接收实际数据的变量

      实际参数:实际参与运算的变量

   b.方法的形参为引用数据类型

     形式参数的改变直接影响实际参数。引用的时参数的地址

// 参数传递的经典案例

class Test{

    public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println("a:"+a+",b:"+b); //a:10,b:20
change(a,b);
System.out.println("a:"+a+",b:"+b); //a:10,b:20
     // a,b的值在前后并没有发生改变 int[] arr = {1,2,3,4,5};
change(arr);
System.out.println(arr[1]); // 4
      //数组的值发生改变
}     // 参数时基本数据类型
public static void change(int a,int b) {
System.out.println("a:"+a+",b:"+b); //a:10,b:20
a = b;    //a=20
b = a + b;   //b=40
System.out.println("a:"+a+",b:"+b); //a:20,b:40
}
    // 参数是引用数据类型
public static void change(int[] arr) { //arr={1,2,3,4,5};
for(int x=0; x<arr.length; x++) {
if(arr[x]%2==0) {
arr[x]*=2;
}
}
    //arr={1,4,3,8,5};
}
}

    

7.打印所有的水仙花数

public class MethodTest2 {
//把所有的水仙花数打印在控制台
public static void printFlower() {
for(int x=100; x<1000; x++) {
int ge = x%10;
int shi = x/10%10;
int bai = x/10/10%10; if((ge*ge*ge+shi*shi*shi+bai*bai*bai) == x){
System.out.println(x);
}
}
} public static void main(String[] args) {
printFlower();
}
}

JAVAEE学习day04方法的定义和重载的更多相关文章

  1. JAVA基础学习之路(二)方法定义,重载,递归

    一,方法的定义: package test; public class test1 { public static void main(String args[]) { int result = ad ...

  2. Java方法的定义以及调用、方法重载、可变参数以及递归

    目录 何谓方法 方法的定义及调用 方法的定义 方法调用 方法重载 命令行传参 可变参数 递归 何谓方法 Java方法是语句的集合,它们在一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法包含于 ...

  3. java_方法的定义、调用、重载

    方法的定义 1 概述 方法:就是将一个功能抽取出来,把代码单独定义在一个大括号内,形成一个单独的功能. 当我们需要这个功能的时候,就可以去调用.这样即实现了代码的复用性,也解决了代码冗余的现象. 2 ...

  4. Java | 方法的定义 & 重载 & 递归

    方法 方法就是一段用来完成特定功能的代码片段.   方法用于定义该类或该类的实例的行为特征和功能实现.方法是类和对象行为特征的抽象.在面向对象中,整个程序的基本单位是类,方法是从属于类和对象的. 方法 ...

  5. java基础学习总结——方法的重载(overload)

    一.方法的重载 方法名一样,但参数不一样,这就是重载(overload). 所谓的参数不一样,主要有两点:第一是参数的个数不一样,第二是参数的类型不一样.只要这两方面有其中的一方面不一样就可以构成方法 ...

  6. [转载]JavaEE学习篇之——JQuery技术详解

    原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/32102187 1.简介2.工具3.jQuery对象 1.DOM对象转化成j ...

  7. Android Activity为什么要细化出onCreate、onStart、onResume、onPause、onStop、onDesdroy这么多方法让应用去重载?

    原文:http://www.xuebuyuan.com/1608083.html 最近在研究Activity的启动流程,老罗的blog在看,也找了其它资料学习,也跟过Android4.3的源码, 在跟 ...

  8. 乐字节Java编程之方法、调用、重载、递归

    一.概述 方法是指人们在实践过程中为达到一定目的和效果所采取的办法.手段和解决方案. 所谓方法,就是解决一类问题的代码的有序组合,是一个功能模块.编程语言中的方法是组合在一起来执行操作语句的集合.例如 ...

  9. java基础:方法的定义和调用详细介绍,方法同时获取数组最大值和最小值,比较两个数组,数组交换最大最小值,附练习案列

    1. 方法概述 1.1 方法的概念 方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集 注意: 方法必须先创建才可以使用,该过程成为方法定义 方法创建后并不是直接可 ...

随机推荐

  1. CF-1144F-Graph Without Long Directed Paths

    题意: 给出一个无向联通图,要求你给出每条边的方向,使得无论从哪个点出发最多只能走一条边: 思路: 对于每个点,要么出度为0,要么入度为0即可.所以这就是一个判断二分图. 二分图 #include & ...

  2. [LC] 116. Populating Next Right Pointers in Each Node

    You are given a perfect binary tree where all leaves are on the same level, and every parent has two ...

  3. 批量修改ACCESS表列名

    问题来源:从ODBC导入数据到ACCESS 再从ACCESS导入到SQL数据库,ACCESS会多带个DBO. 所以需要批量修改ACCESS的表名. 首先需要引用ADOX引用方法:打开ACCESS的VB ...

  4. python3下scrapy爬虫(第四卷:初步抓取网页内容之抓取网页里的指定数据延展方法)

    上卷中我运用创建HtmlXPathSelector 对象进行抓取数据: 现在咱们再试一下其他的方法,先试一下我得最爱XPATH 看下结果: 直接打印出结果了 我现在就正常拼下路径 只求打印结果: 现在 ...

  5. Nginx的四层和七层代理

    理论部分: 所谓四层负载均衡,也就是主要通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器,它一般走的是tcp,udp协议    所谓七层负载均衡,也称为“内 ...

  6. js中对Object对象的一些常用操作总结

    前言我前面的文章,写过js中“类”与继承的一些文章.ES5我们可以通过 构造函数 或者 Object.create()等方式来模拟出js中的“类”,当然,对象呢是类的实例化,我们可以通过如下方式创建对 ...

  7. Python测试开发-浅谈如何自动化生成测试脚本

    Python测试开发-浅谈如何自动化生成测试脚本 原创: fin  测试开发社区  前天 阅读文本大概需要 6.66 分钟. 一 .接口列表展示,并选择 在右边,点击选择要关联的接口,区分是否要登录, ...

  8. ES6中 const 关键字

    const声明一个只读的常量.一旦声明,常量的值就不能改变. 定义后可以使用但不能修改 但是,const 定义的对象可能与我们想象的不太一样 定义了对象b ,我们可以在b上添加修改属性,再看一个列子 ...

  9. yum配置与使用

    yum的配置一般有两种方式,一种是直接配置/etc目录下的yum.conf文件,另外一种是在/etc/yum.repos.d目录下增加.repo文件. 一.yum的配置文件 [main] cached ...

  10. hexo+github搭建自己的博客

    之前很早就想用hexo弄一个自己独立的博客了,在博客园也写了很多的博客,不过不喜欢博客园的风格.不过今天,终于折腾成功了,用hexo搭建了一个在github写的博客,开心,后面会将自己以前的博客慢慢迁 ...