当前位置:首页 > Java

java如何调用方法

2026-03-02 21:18:54Java

调用实例方法

实例方法属于类的对象,需先创建对象再调用:

ClassName obj = new ClassName();  
obj.methodName(parameters);  

示例

public class Calculator {  
    public int add(int a, int b) {  
        return a + b;  
    }  
}  

// 调用  
Calculator calc = new Calculator();  
int result = calc.add(5, 3);  

调用静态方法

静态方法属于类本身,无需实例化,直接通过类名调用:

ClassName.staticMethodName(parameters);  

示例

java如何调用方法

public class MathUtils {  
    public static int multiply(int a, int b) {  
        return a * b;  
    }  
}  

// 调用  
int product = MathUtils.multiply(4, 2);  

方法参数传递

Java支持值传递(基本类型)和引用传递(对象类型):

  • 基本类型:传递值的副本,原值不受影响。
  • 对象类型:传递对象引用,方法内修改会影响原对象。

示例

java如何调用方法

public void updateValue(int num) {  
    num = 10; // 不影响外部变量  
}  

public void updateArray(int[] arr) {  
    arr[0] = 100; // 修改会影响外部数组  
}  

方法重载

同一类中允许同名方法,但参数列表必须不同(类型、数量或顺序):

public class Printer {  
    public void print(String text) { /*...*/ }  
    public void print(int number) { /*...*/ }  
    public void print(String text, int times) { /*...*/ }  
}  

递归调用

方法直接或间接调用自身,需设置终止条件避免无限递归:

public int factorial(int n) {  
    if (n == 1) return 1;  
    return n * factorial(n - 1);  
}  

注意事项

  • 实例方法需确保对象非null,否则抛出NullPointerException
  • 静态方法不能直接访问实例成员。
  • 递归深度过大可能导致栈溢出(StackOverflowError)。

标签: 方法java
分享给朋友:

相关文章

如何学java

如何学java

学习Java的基础知识 Java是一门面向对象的编程语言,掌握基础语法是入门的关键。需要了解变量、数据类型、运算符、控制结构(如if-else、for循环、while循环)、数组等概念。可以通过官方文…

如何安装java环境

如何安装java环境

下载JDK安装包 访问Oracle官方网站或OpenJDK项目页面,选择适合操作系统的JDK版本(如Windows、macOS或Linux)。确保下载与系统架构匹配的版本(32位或64位)。 运行安…

如何学习java语言

如何学习java语言

学习Java语言的系统方法 理解基础概念 Java是一种面向对象的编程语言,掌握基础概念如变量、数据类型、运算符、控制流语句(if-else、循环)是第一步。熟悉类和对象的概念,理解封装、继承和多态三…

vue登录实现方法

vue登录实现方法

实现登录功能的核心步骤 前端部分(Vue.js) 使用Vue CLI创建项目并安装必要依赖(axios、vue-router等)。创建登录组件包含表单,绑定v-model到data属性如userna…

vue实现全局方法

vue实现全局方法

在 Vue 中实现全局方法 Vue 中可以通过多种方式实现全局方法,以下是常见的几种方法: 1. 通过 Vue.prototype 添加全局方法 在 Vue 的原型上添加方法,这样所有的 Vue…

vue轮播图实现方法

vue轮播图实现方法

使用Swiper插件实现 安装Swiper及相关Vue组件库 npm install swiper vue-awesome-swiper 基础轮播图组件示例 <template>…