> Java > java지도 시간 > 본문

Java 함수는 어떻게 비교됩니까? 그것들은 어떻게 다릅니까?

WBOY
풀어 주다: 2024-04-20 11:24:02
원래의
345명이 탐색했습니다.

Java 함수에는 정적 메서드와 인스턴스 메서드라는 두 가지 유형이 있습니다. 정적 메서드는 객체 인스턴스를 필요로 하지 않으며, 클래스 이름을 통해 직접 호출되며, 클래스 상태와 관련 없는 작업을 수행하는 데 사용됩니다. 인스턴스 메서드는 개체 인스턴스를 호출해야 하며 개체의 상태에 액세스하거나 수정하는 데 사용됩니다.

Java 함수는 어떻게 비교됩니까? 그것들은 어떻게 다릅니까?

Java 함수 비교

Java에는 정적 메서드와 인스턴스 메서드라는 두 가지 유형의 함수가 있습니다.

정적 메서드(클래스 메서드)

  • static 키워드 선언 사용 static 关键字声明
  • 不需要对象实例,直接通过类名调用
  • 用于执行与类状态无关的操作,例如数学计算或实用程序函数

代码示例:

public class MathUtils {

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

    public static void main(String[] args) {
        int result = MathUtils.add(5, 10);
        System.out.println(result); // 输出:15
    }
}
로그인 후 복사

实例方法

  • 不使用 static
  • 객체 인스턴스가 필요하지 않으며 클래스를 통해 직접 호출됩니다. name
  • 수학적 계산이나 유틸리티 함수 등 클래스 상태와 관련 없는 작업을 수행하는 데 사용됩니다.

코드 예:

public class Person {

    private String name;

    public Person(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public static void main(String[] args) {
        Person p1 = new Person("John");
        p1.setName("Mary");
        System.out.println(p1.getName()); // 输出:Mary
    }
}
로그인 후 복사

인스턴스 메서드

static 키워드를 사용하여 선언되지 않음 호출하려면 개체 인스턴스가 필요합니다. getter 및 setter와 같은 개체의 상태에 액세스하거나 수정하려면코드 예:
public class StringUtils {

    public static String concat(String str1, String str2) {
        return str1 + str2;
    }

    public static void main(String[] args) {
        String name1 = "John";
        String name2 = "Doe";
        String fullName = StringUtils.concat(name1, name2);
        System.out.println(fullName); // 输出:JohnDoe
    }
}
로그인 후 복사
주요 차이점FeaturesStat IC 방법 인스턴스 메서드 인스턴스화필요하지 않음필수호출 메서드classname.methodName()object.methodName()목적에 관계없이

개체 작업 객체 상태 액세스 또는 수정

가시성

🎜어디서나 액세스 가능🎜🎜동일한 인스턴스에서만 액세스 가능🎜🎜🎜🎜🎜🎜실용 사례🎜🎜🎜🎜두 문자열을 연결하여 쓰기 정적 메서드 : 🎜🎜rrreee

위 내용은 Java 함수는 어떻게 비교됩니까? 그것들은 어떻게 다릅니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿