【JavaSE】成员方法快速入门和方法的调用机制原理

简介: 【JavaSE】成员方法快速入门和方法的调用机制原理

1. 基本介绍

  • 在某些情况下,我们要需要定义成员方法(简称方法)。比如人类:除了有一些属性外( 年龄,姓名..),我们人类还有一些行为比如:可以说话、跑步..,通过学习,还可以做算术题。这时就要用成员方法才能完成。现在要求对 Person 类完善。

2. 成员方法快速入门

Method01.java
1) 添加 speak 成员方法,输出 “我是一个好人”


public class Method01 { 

    //编写一个main方法
    public static void main(String[] args) {
        //方法使用
        //1. 方法写好后,如果不去调用(使用),不会输出
        //2. 先创建对象 ,然后调用方法即可
        Person p1 = new Person();
        p1.speak(); //调用方法

    }
}

class Person {
    
    String name;
    int age;
    //方法(成员方法)
    //添加speak 成员方法,输出 “我是一个好人”
    //解读
    //1. public 表示方法是公开
    //2. void : 表示方法没有返回值
    //3. speak() : speak是方法名, () 形参列表
    //4. {} 方法体,可以写我们要执行的代码
    //5. System.out.println("我是一个好人"); 表示我们的方法就是输出一句话
    
    public void speak() {
        System.out.println("我是一个好人");
    }

}

在这里插入图片描述

2) 添加 cal01 成员方法,可以计算从 1+..+1000 的结果

public class Method01 { 

    //编写一个main方法
    public static void main(String[] args) {
        //方法使用
        //1. 方法写好后,如果不去调用(使用),不会输出
        //2. 先创建对象 ,然后调用方法即可
        Person p1 = new Person();
        p1.cal01(); //调用cal01方法
    }
}

    //添加cal01 成员方法,可以计算从 1+..+1000的结果
    public void cal01() {
        //循环完成
        int res = 0;
        for(int i = 1; i <= 1000; i++) {
            res += i;
        }
        System.out.println("cal01方法 计算结果=" + res);
    }

在这里插入图片描述

3) 添加 cal02 成员方法,该方法可以接收一个数 n,计算从 1+..+n 的结果

public class Method01 { 

    //编写一个main方法
    public static void main(String[] args) {
        //方法使用
        //1. 方法写好后,如果不去调用(使用),不会输出
        //2. 先创建对象 ,然后调用方法即可
        Person p1 = new Person();
        p1.cal02(5); //调用cal02方法,同时给n = 5
        p1.cal02(10); //调用cal02方法,同时给n = 10
    }
}

    //添加cal02 成员方法,该方法可以接收一个数n,计算从 1+..+n 的结果
    //解读
    //1. (int n) 形参列表, 表示当前有一个形参 n, 可以接收用户输入
    public void cal02(int n) {
        //循环完成
        int res = 0;
        for(int i = 1; i <= n; i++) {
            res += i;
        }
        System.out.println("计算结果=" + res);
    }
  • 方法也可以多次调用

在这里插入图片描述

4) 添加 getSum 成员方法,可以计算两个数的


public class Method01 { 

    //编写一个main方法
    public static void main(String[] args) {

        Person p1 = new Person();
        //调用getSum方法,同时num1=10, num2=20
        //把 方法 getSum 返回的值,赋给 变量 returnRes
        int returnRes = p1.getSum(10, 20); 
        System.out.println("getSum方法返回的值=" + returnRes);
    }
}

class Person {
    
    //添加getSum成员方法,可以计算两个数的和
    //解读
    //1. public 表示方法是公开的
    //2. int :表示方法执行后,返回一个 int 值
    //3. getSum 方法名
    //4. (int num1, int num2) 形参列表,2个形参,可以接收用户传入的两个数
    //5. return res; 表示把 res 的值, 返回
    public int getSum(int num1, int num2) {
        int res = num1 + num2;
        return res;
    }
}

在这里插入图片描述

3. 方法的调用机制原理

  • 画出程序执行过程[getSum]+说明

在这里插入图片描述

目录
相关文章
继承与隐藏:Java中父类成员变量的神秘禁忌
本文将解释为什么Java设计了这样的规则,探讨与此相关的继承和多态的概念,并说明如何在子类中访问和使用父类的成员变量。
|
3月前
|
Java 调度 开发者
Java 神秘新成员 —— 虚拟线程究竟是什么?它又能解开哪些编程痛点之谜?
【8月更文挑战第23天】Java虚拟线程是一种轻量级执行线程,由Java运行时管理,相较于传统操作系统线程,其创建和管理成本更低。基于用户模式线程概念,Java应用程序无需依赖OS即可实现高度并发。虚拟线程数量可远超传统线程,有效提升多核处理器利用率和并发性能。它解决了传统Java线程模型中创建成本高、调度开销大及I/O阻塞等问题,极大提高了程序的并发性和响应速度。
38 1
|
4月前
|
Java 程序员
【Java探索之旅】继承概念_语法_父类的成员访问
【Java探索之旅】继承概念_语法_父类的成员访问
57 10
|
5月前
|
Java
在 Java 中,类是一种定义对象的模板,它包含数据成员(字段)和方法。
在 Java 中,类是一种定义对象的模板,它包含数据成员(字段)和方法。
|
6月前
|
Java
【JAVA学习之路 | 基础篇】类的成员--代码块
【JAVA学习之路 | 基础篇】类的成员--代码块
|
5月前
|
安全 Java
比较java枚举成员使用equal还是==
比较java枚举成员使用equal还是==
121 0
|
存储 Java 数据库
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(中)
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(中)
64 1
|
6月前
|
Java
【Java基础】类名、抽象类、接口名的参数传递及成员内部类、局部内部类和匿名内部类的使用
【Java基础】类名、抽象类、接口名的参数传递及成员内部类、局部内部类和匿名内部类的使用
79 0
|
Java 编译器
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(上)
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(上)
63 1
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(上)
|
存储 Java
Java内部类 - 局部/匿名/成员/静态内部类
Java内部类 - 局部/匿名/成员/静态内部类
93 0
下一篇
无影云桌面