【JavaSE】方法的使用细节说明

简介: 【JavaSE】方法的使用细节说明

1. 成员方法的定义

访问修饰符  返回数据类型 方法名(形参列表..) {//方法体
          语句;
          return 返回值;
}

1) 形参列表:表示成员方法输入 cal(int n)getSum(int num1, int num2)
2) 返回数据类型:表示成员方法输出, void 表示没有返回值
3) 方法主体:表示为了实现某一功能代码块
4) return 语句不是必须的。

2. 注意事项和使用细节

MethodDetail.java

  • 访问修饰符 (作用是控制 方法使用的范围),如果不写默认访问,[有四种: public, protected, 默认, private]
  • 返回数据类型

1) 一个方法最多有一个返回值【思考,如何返回多个结果 返回数组】

  • 案例:
public class MethodDetail {
    public static void main(String[] args) {
        AA a = new AA();
        int[] res = a.getSumAndSub(1, 4);
        System.out.println("和=" + res[0]);
        System.out.println("差=" + res[1]);
    }

}

class AA{
    public int[] getSumAndSub(int n1,int n2){
        int[] resArr = new int[2];
        resArr[0] = n1 + n2;
        resArr[1] = n1 - n2;
        return resArr;
    }
}

在这里插入图片描述

2) 返回类型可以为任意类型,包含基本类型或引用类型(数组,对象)

  • 案例:如上所示

3) 如果方法要求有返回数据类型,则方法体中最后的执行语句必须为 return 值; 而且要求返回值类型必须和 return 的值类型一致或兼容

  • 没有写返回值,错误

在这里插入图片描述

  • 这样都是可行的,有返回值

在这里插入图片描述
在这里插入图片描述

  • 要求返回值类型必须和 return 的值类型一致或兼容

在这里插入图片描述
在这里插入图片描述

4) 如果方法是 void,则方法体中可以没有 return 语句,或者 只写 return ;
在这里插入图片描述
在这里插入图片描述

  • 这样就是不可行的

在这里插入图片描述

  • 方法名

遵循驼峰命名法,最好见名知义,表达出该功能的意思即可, 比如 得到两个数的和 getSum, 开发中按照规定

在这里插入图片描述

  • 细节3: 调用带参数的方法时,一定对应着参数列表传入相同类型或兼容类型的参数
    AA a = new AA();
    int[] res = a.getSumAndSub(1, 4);
    System.out.println("和=" + res[0]);
    System.out.println("差=" + res[1]);
    
    byte b1 = 1;
    byte b2 = 2;
    a.getSumAndSub(b1, b2);//byte -> int
    //a.getSumAndSub(1.1, 1.8);//double ->int(×)
  • 细节4: 实参和形参的类型要一致或兼容、个数、顺序必须一致
//a.getSumAndSub(100);//× 个数不一致
a.f3("tom", 10); //ok
//a.f3(100, "jack"); // 实际参数和形式参数顺序不对

class CC{
    public void f3(String str, int n){
    
}

3. 方法调用细节说明

在这里插入图片描述

  1. 案例:
public class MethodDetail02 {
    public static void main(String[] args) {
        A a = new A();
        a.sayOk();
    }
}
class A{
    //同一个类中的方法,直接调用即可
    public void print(int n) {
        System.out.println("print方法被调用 n=" + n);
    }
    public void sayOk(){    //sayOk方法调用 print 方法
        print(10);
        System.out.println("继续执行sayOk方法...");
    }
}

在这里插入图片描述

  1. 案例:
    public class MethodDetail02 {
        public static void main(String[] args) {
            A a = new A();
            a.m1();
        }
    }
    
    class A{
        // 跨类中的方法A类调用B类方法:需要通过对象名调用
        public void m1(){
            //创建B对象,然后调用方法即可
            System.out.println("m1方法被调用了");
            B b = new B();
            b.hi();
            System.out.println("m1继续执行");
            }
        }
    }

    class B{
        public void hi(){
            System.out.println("B类中的hi方法被执行了");
        }
    }

在这里插入图片描述

目录
相关文章
|
8月前
|
Java
javaSE基础代码案例
javaSE基础代码案例
【JavaSE】Java基础语法(十五):继承
1. 继承的实现 继承的概念 继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新 定义,以及追加属性和方法 实现继承的格式 继承通过extends实现 格式:class 子类 extends 父类 { } 举例:class Dog extends Animal { }
|
8月前
|
Java
JavaSE基础篇:方法可变参数
JavaSE基础篇:方法可变参数
|
算法 安全 Java
【JavaSE专栏47】Java常用类Collections解析,你了解JAVA集合类的通用用法吗?
【JavaSE专栏47】Java常用类Collections解析,你了解JAVA集合类的通用用法吗?
191 2
|
存储 Java Unix
【JavaSE】类和对象解析(1)
【JavaSE】类和对象解析(1)
【JavaSE】Java基础语法(四十三):反射
概述: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法(包括私有的);对于任意一个对象,都能够调用它的任意一个方法和属性(包括私有的); 这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.
【JavaSE】Java基础语法(三十一):可变参数
1. 可变参数 可变参数介绍 可变参数又称参数个数可变,用作方法的形参出现,那么方法参数个数就是可变的了 方法的参数类型已经确定,个数不确定,我们可以使用可变参数
|
自然语言处理 Java 编译器
【JavaSE】Java方法的使用攻略
Java方法的使用攻略
65 0
|
Java
【JavaSE基础】小看final关键字?教你如何深入理解和使用(下)
【JavaSE基础】小看final关键字?教你如何深入理解和使用
194 0
【JavaSE基础】小看final关键字?教你如何深入理解和使用(下)
|
存储 Java 编译器
【JavaSE基础】小看final关键字?教你如何深入理解和使用(上)
【JavaSE基础】小看final关键字?教你如何深入理解和使用
106 0
【JavaSE基础】小看final关键字?教你如何深入理解和使用(上)