方法:完成特定功能的代码块
注意:在很多语言里面有函数的定义,而在Java中函数被称为方法。
方法格式:
修饰符 返回值类型+ 方法名 (参数类型 参数名1,参数类型 参数名2...){
方法体语句;
return 返回值;
}
详细解释:
修饰符:目前就用public static。
返回值类型:就是功能结果的数据类型。
方法名:符合命名规则即可。方便我们的调用。
参数:
实际参数:就是实际参与运算的。
形式参数;就是方法定义上的,用于接收实际参数的。
参数类型:就是参数的数据类型
参数名:就是变量名
方法体语句:就是完成功能的代码。
return:结束方法的。
返回值:就是功能的结果,由return带给调用者。

要想写好一个方法,就必须明确两个东西:
A:返回值类型
结果的数据类型
B:参数列表
你要传递几个参数,以及每个参数的数据类型

需求:求两个数据之和的案例

方法的执行特点:
不调用,不执行。

如何调用呢?(有明确返回值的调用)
A:单独调用,一般来说没有意义,所以不推荐。
B:输出调用,但是不够好。因为我们可能需要针对结果进行进一步的操作。
C:赋值调用,推荐方案。
class FunctionDemo {
public static void main(String[] args) {
int x = 10;
int y = 20;

//方式1:单独调用
//sum(x,y);

//方式2:输出调用
//System.out.println(sum(x,y));
//System.out.println(30);

//方式3:赋值调用
int result = sum(x,y);
//result在这里可以进行操作
System.out.println(result);
}

/*
需求:求两个数据之和的案例

两个明确:
返回值类型:int
参数列表:2个,都是int类型。
*/
public static int sum(int a,int b) {
//如何实现呢?
//int c = a + b;
//return c;

//c就是a+b,所以,我可以直接返回a+b
return a + b;

方法的注意事项:

A:方法不调用不执行。
B:方法与方法是平级关系。
C:方法定义的时候参数之间用逗号隔开。
D:方法调用的时候不用再传递数据类型。
E:如果方法有明确的的返回值,一定要有return带回一个值。

方法的形式参数是类名的时候如何调用:

/*
形式参数的名字问题:
基本类型:形式参数的改变不影响实际参数
引用类型:形式参数的改变直接影响实际参数
*/
//形式参数是基本类型
class Demo{
public int sum(int a,int b){
return a+b;
}
}
//形式参数是引用类型
class Student {
public void show(){
System.out.println("我爱学习");
}
}

class StudentDemo{
//如果你看到了一个方法的形式参数是一个类类型(引用类型),这里其实需要的是该类的对象
public void method(Student s){//调用的时候,把main方法中s的地址传递到了这里
s.show();
}
}

class ArgsTest{
public static void main(String[] args){
//形式参数是基本类型的调用
Demo d = new Demo();
int result = d.sum(10,20);
System.out.println("result:"+result);

//形式参数是引用类型的调用
//需求:我要调用StudentDemo类中method()方法
SutdentDemo sd = new StudentDemo();
//创建学生类对象
Student s = new Student();
sd.method(s);//把s的地址给到了
}
}

成员方法的分类及使用:

成员方法:
1.void类型
2.非void类型
3.空参方法
4.非空参方法
class Student{
public String getString(){ //无参有返回
return "helloworld";
}
public void show(){ //无参无返回
System.out.println("show");
}
public void method(String name){ //带参无返回
System.out.println("name");
}
public String function(String s1,String s2){ //带参有返回
return s1+s2;
}
}
class Test{
Student s = new Student();
//无参有返回
String result = s.getString();
System.out.println(result);
//无参无返回
s.show();
//带参无返回
s.method("需要传参");
//带参带返回
String result2 = s.function("hello","world");
System.out.println(result2);
}

Java中的方法是什么以及方法的书写格式的更多相关文章

  1. java中获取日期和时间的方法总结

    1.获取当前时间,和某个时间进行比较.此时主要拿long型的时间值. 方法如下:  要使用 java.util.Date .获取当前时间的代码如下 Date date = new Date(); da ...

  2. java中遍历map对象的多种方法

    在Java中如何遍历Map对象   How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有ma ...

  3. java中常用的字符串的截取方法

    java中常用的字符串的截取方法   1.length() 字符串的长度 例:char chars[]={'a','b'.'c'}; String s=new String(chars); int l ...

  4. Java中的五种单例模式实现方法

    [代码] Java中的五种单例模式实现方法   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 2 ...

  5. 谈谈java中遍历Map的几种方法

    java中的map遍历有多种方法,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,让我们一起来看下具体的用法以及各自的优缺点 先初始化一个map public ...

  6. Java中产生随机数的两个方法

    Java中产生随机数的两个方法 一.利用random方法来生成Java随机数. 在Java语言中生成Java随机数相对来说比较简单,因为有一个现成的方法可以使用.在Math类中,Java语言提供了一个 ...

  7. Java中创建数组的几种方法

    Java中创建数组的几种方法 public static void main(String[] args) { //创建数组的第一种方法 int[] arr=new int[6]; int intVa ...

  8. Java中遍历map的四种方法 - 转载

    在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...

  9. JAVA中生成指定位数随机数的方法总结

    JAVA中生成指定位数随机数的方法很多,下面列举几种比较常用的方法. 方法一.通过Math类 public static String getRandom1(int len) { int rs = ( ...

  10. Java中移动文件或目录的方法盘点

    本文不再更新,可能存在内容过时的情况,实时更新请移步原文地址:Java中移动文件或目录的方法盘点: import org.apache.commons.io.FileUtils; import jav ...

随机推荐

  1. Java基础语法(9)-面向对象之类的成员

    title: Java基础语法(9)-面向对象之类的成员 blog: CSDN data: Java学习路线及视频 1.面向对象特征--封装 为什么需要封装?封装的作用和含义? 我要用洗衣机,只需要按 ...

  2. iOS 协议分发

    Github:AOMultiproxier.HJProtocolDispatcher 协议实现分发器,能够轻易实现将协议事件分发给多个实现者. 一.AOMultiproxier.h #define A ...

  3. 一文彻底读懂MySQL事务的四大隔离级别

    前言 之前分析一个死锁问题,发现自己对数据库隔离级别理解还不够清楚,所以趁着这几天假期,整理一下MySQL事务的四大隔离级别相关知识,希望对大家有帮助~ 事务 什么是事务? 事务,由一个有限的数据库操 ...

  4. [Asp.Net Core] 为什么选择 Blazor Server Side (一) 快速实现图片验证码

    关于Blazor 由于在国内, Blazor一点都不普及, 建议读者翻看我之前写的随笔, 了解Blazor Server Side的特点. 在一段时间内, 我会写一些解说分析型的 "为什么选 ...

  5. Python第三方包之PrettyTable

    Python第三方包之PrettyTable 可以让我们将数据用表格的方式展示出来 安装方式 pip install PrettyTable 测试是否安装成功 使用方法与对比 增加一条数据 先简单的看 ...

  6. 关于C#三层架构增删改查中的“删除”问题

    序: 刚学习C#,经过一段时间学习,现在正在做一个简单的前后台联通的项目(主要是C#三层架构实现增删改查).分享一点儿小经验,也供自己以后可以回头看看自己的码农之路. 内容: 主要分享的是一条删除会用 ...

  7. 艾编程coding老师课堂笔记:SpringBoot源码深度解析

    思想:有道无术,术尚可求,有术无道,止于术! Spring 开源框架,解决企业级开发的复杂性的问题,简化开发 AOP, IOC Spring 配置越来多,配置不方便管理! Javaweb---Serv ...

  8. XSS编码问题的个人总结

    XSS也太太太难了,主要也是因为自己没花时间集中. 文章脉络:根据我粗浅的理解,从开始学习XSS到现在,从一开始的见框就插到现在去学构造.编码,首先需要的是能看懂一些payload,然后再去深入理解. ...

  9. Spring 中使用 WebSocket 笔记

    编写 WebSocket 消息处理类,比较简单的方式就是直接继承AbstractWebSocketHandler,并覆写其中的处理方法,下面为一个简单的 demo public class WebSo ...

  10. .NET Core项目部署到Linux(Centos7)(十)总结

    目录 1.前言 2.环境和软件的准备 3.创建.NET Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.NET Core环境 6. ...