1.方法

定义:一段定义在类中的业务逻辑的代码.

目的:封装右业务关系的代码,实现代码的复用,即简化代码书写.

2.方法定义的格式

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

  方法体;

  return[返回值]

}

修饰符:目前固定写法:public static

返回值类型:如果没有返回值:void

      如果有返回值,就是具体的数据类型(包括基本数据类型和引用数据类型)

方法名:根据命名规范,最好做到见名知意.

形参列表:形参的数据类型和形参名组成一个形参定义,多个形参之间用逗号分隔.

方法体:就是方法被调用时候执行的语句

return;表示方法体结束,如果返回值为void,后边一定不能加任何值.此时,return语句可以省略

如果有具体的返回值,后面一定要跟一个值(数据类型一致的常量,变量,表达式).

方法定义的位置:

目前位置:类中,main方法之外

方法不能嵌套定义.但是方法之间可以互相调用.

3.方法的调用

<1>.有明确返回值方法的调用

  >>>给相应类型的变量赋值

    int res = add(1,2);

    System.out.println(add(1,2));

  >>>单独调用

    add(1,2);

<2>返回值为void方法的调用

  >>>只能单独调用

    print ();

public static void main(String[] args){
int res = add(1,2);
System.out.println(res);
} //
public static int add(int a,int b){
return a + b;
}

有参数的方法被调用时,相当于给形参赋值.


方法的返回值返回给调用者


方法之间可以互相调用:


public static void main(String[] args){


introduce("Zhangsan");


}


//


public static void sayHi(){


System.out.println("Hello");

//

public static void introduce(String name){//name = "Zhangsan";

sayHi();//调用自定义方法

System.out.println("My name is : " + name);

}

 

4.方法的重载

eg1:

/*
演示方法的重载
在一个类中,多个方法名相同,但是形参列表不同(个数或者类型)的方法,称为方法的重载(overload)
方法的重载和返回值无关. 两同一不同:
同类,同名
不同形参列表 */
public class OverloadDemo{
public static void main(String[] args){
int a = 1;
int b = 2;
double d = 1.5;
// int res1 = add(a,b);
// System.out.println(res1); double res2 = add(a,b);
System.out.println(res2);
} /*
public static int add(int a,int b){
return a + b;
}
*/ public static double add(double a,int b){
return 0;
} public static int add2(int a,int b,int c){
return a + b + c;
} public static double add1(double d1,double d2){
return d1 + d2;
} }

eg2:

/*
重载演示
*/
public class OverloadDemo2{
public static void main(String[] args){
test(1); int a = 1;
test(a); short s = 1;
test(s);
} public static void test(short s){
System.out.println("short类型形参的方法被调用");
} public static void test(int s){
System.out.println("int类型形参的方法被调用");
}
}

eg3

/*
方法重载2
*/
public class OverloadDemo3{
public static void main(String[] args){
int r1 = add(1,1);
System.out.println(r1); double r2 = add(1.0,2.0);
System.out.println(r2);
} public static int add(int a,int b){
return a + b;
}
public static double add(double d1,double d2){
return d1 + d2;
}
}

java基础知识-方法的更多相关文章

  1. java基础知识回顾之---java String final类普通方法

    辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /*     * 按照面向对象的思想对字符串进行功能分类.     *      ...

  2. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  3. java基础知识小总结【转】

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

  4. Java基础知识系列——String

    最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...

  5. 学习android学习必备的java基础知识--四大内部类

    学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...

  6. JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)

    本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...

  7. Java 基础知识(一)

    Java基础知识篇: 一.关键字解释 1. final:修饰非抽象类,非抽象方法和属性, 以及修饰方法参数,代表“无法改变的”.出于对设计或者效率的考虑使用该关键字. final类无法被继承,fina ...

  8. java 基础知识三 java变量

    java  基础知识 三 变量 1.作用域 {} 包围起来的代码 称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序 ...

  9. java 基础知识二 基本类型与运算符

    java  基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...

随机推荐

  1. 利用nginx添加账号密码验证

    server { listen ; server_name xxx.com; location / { proxy_pass http://10.10.10.10:5601; proxy_redire ...

  2. 剑指offer例题——二进制中1的个数

    题目:输入一个整数,输出该二进制表示中1的个数.其中负数用补码表示. 首先明确补码的定义: 原码 反码 补码 将最高位作为符号位(0表示正,1表示负), 其它数字位表达数值本身的绝对值的数字表示方式 ...

  3. grains和pillar的联合使用

    在编写sls文件的时候,对于不同的客户端,在配置管理的时候,其安装的环境,配置文件和启动的服务都相同: 如果完全是不同的环境,建议写单独的sls文件,不要混合在一起; 如果是相同的环境,只不过对于不同 ...

  4. Beta冲刺——第一天

    beta冲刺:第一天 各个成员今日完成的任务 成员 冯晓.马思远 彭辉.王爽 吴琼.郝延婷 今日完成任务 ·参会人员注册代码规范与功能测试 ·网站的前端代码调整 ·代码规范 ·系统功能测试 ·博客撰写 ...

  5. python学习Day1 计算机原理编程思维

    一.学习思想:3W+1H   学什么(what).为什么学(why).用在哪里(where).怎么用(how) 学习编程语言重在代码量.代码量.代码量! 二.计算机五大组成部分,三大核心: 五大组成部 ...

  6. tensorflow中的gfile模块(转)

    简介 这些函数和python中的os模块非常的相似,一般都可以用os模块代替吧 gfile API介绍 下面将分别介绍每一个gfile API! 2-1)tf.gfile.Copy(oldpath, ...

  7. Java 集合类实现原理

    转载自:http://blog.csdn.net/qq_25868207/article/details/55259978 :##ArrayList实现原理要点概括 参考文献:http://zhang ...

  8. 【转】IO多路复用机制详解

    高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking  ...

  9. 视频和swf的相对路径加载,卸载

    package com{ import flash.display.MovieClip; import flash.net.NetConnection; import flash.net.NetStr ...

  10. Win7上安装scapy

    1.环境 操作环境:win7 python版本:python3.5 依赖模块:Npcap(推荐)或WinPcap 下载scapy 2.安装步骤 操作环境,python及依赖模块安装省略(一直点击下一步 ...