[Snow-ball]프로그래밍(컴퓨터)/java
[JAVA] static메서드와 인스턴스메서드의 사용예와 차이점
Snow-ball
2021. 3. 6. 16:43
반응형
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | package JavaJungsuck.six; class MyMath2 { long a, b; // iv: 인스턴스변수이다 = 클래스 전체에 사용가능. // 인스턴스 변수 a, b 만을 이용해서 작업하므로 매개변수가 필요없다. // a, b는 인스턴스변수(iv) long add() { return a + b; } long subtract() { return a - b; } long multiply() { return a * b; } double divide() { return a / b; } // 인스턴스 변수와 관계없이 매개변수만으로 작업이 가능하다. // a, b는 지역변수(lv) static long add(long a, long b) { return a + b; } static long subtract(long a, long b) { return a - b; } static long multiply(long a, long b) { return a * b; } static double divide(long a, long b) { return a / b; } } | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | package JavaJungsuck.six; public class Ex6_9 { public static void main(String[] args) { // 클래스 메서드 호출. 인스턴스 생성없이 호출가능. System.out.println(MyMath2.add(200L, 100L)); System.out.println(MyMath2.subtract(200L, 100L)); System.out.println(MyMath2.multiply(200L, 100L)); System.out.println(MyMath2.divide(200L, 100L)); MyMath2 mm = new MyMath2(); // 인스턴스를 생성 mm.a = 200L; mm.b = 100L; // 인스턴스 메서드는 객체생성 후에만 호출이 가능함. // 참조변수.메서드이름(); System.out.println(mm.add()); System.out.println(mm.subtract()); System.out.println(mm.multiply()); System.out.println(mm.divide()); } } | cs |
반응형