class를 통해 직접적으로 실행할 수 있는 method
비교 코드
package src;
class Calculator{
static double base = 0;
int left,right;
public void setOprands(int left,int right) {//static이 없다 in 인스턴스 메소드
this.left = left;
this.right = right;
}
public void sum() {
System.out.println(this.left+this.right+base);
}
}
public class CalculatorDemo4 {
public static void main(String[] args) {
Calculator c1 = new Calculator();
c1.setOprands(10, 20);
c1.sum();
Calculator.base = 10;
c1.sum();
}
}
위의 코드같은 경우 c1이라는 객체를 생성하고 그 객체안의 method를 통해 값을 호출했다. 하지만
이렇게 객체를 선언하지 않고도, class 내에 method를 만들어 같은 결과를 도출할 수 있다.
class 내의 method 코드예제
package src;
class Calculator{
static double base = 0;
int left,right;
public static void sum(int left,int right) { //static이 있다 in class method
System.out.println(left+right+base);
}
}
public class CalculatorDemo4 {
public static void main(String[] args) {
Calculator.sum(10, 20);
Calculator.base = 10;
Calculator.sum(10, 20);
}
}
코드 사용의 차이
객체 c1 ,c2 등이 다른 값을 가진 채 고정되어 있어야하는 경우 비교 코드같이 객체를 활용하지만,
class method 예제코드같은 경우 어떤 셋팅된 상태를 공유할 필요가 없이 일회용물품처럼 한번만 사용할 경우에 활용
'프로그래밍 언어 > Java' 카테고리의 다른 글
java 2강 - 1 Cannot make a static reference to the non-static method 에러 (class와 instance의 관계) (0) | 2021.10.15 |
---|---|
java Could not find or load main class src 에러 해결 (0) | 2021.10.14 |
Android setHeight error 해결방법 (java에서 xml height 속성 변경하기) (0) | 2021.10.11 |
java 1강 기본개념정리(class와 instance의 관계 ) (0) | 2021.10.08 |
JAVA Editor does not contain a main type 오류 해결방법 (0) | 2021.10.06 |