class 객체 선언 방법, 메소드 정의, 호출 기초.

JooKit 주킷 2020. 4. 26. 23:52
목차 접기
728x90
반응형
// class 를 만든 후, 객체를 선언하고 정의한 메소드 호출 방법
// ---------------------방법 1.----------------------------
class Main {
	public static void main(String[] args) {
    
        자동차 a자동차 = new 자동차();
        a자동차.달리다();
	}
}
class 자동차 {
	void 달리다() {
    	System.out.println("자동차가 달립니다.");
    }
}


// ---------------------방법 2.----------------------------
class Main {
	public static void main(String[] args) {
    
        자동차 a자동차;
        a자동차 = new 자동차();
        a자동차.달리다();
	}
}
class 자동차 {
	void 달리다() {
    	System.out.println("자동차가 달립니다.");
    }
}


// ---------------------방법 3.----------------------------
class Main {
	public static void main(String[] args) {
   
        자동차.달리다();
	}
}
class 자동차 {
	static void 달리다() {
    	System.out.println("자동차가 달립니다.");
    }
}




// ---------------------방법 4.----------------------------
class Main {
	public static void main(String[] args) {
   
        new 자동차().달리다();
	}
}
class 자동차 {
	void 달리다() {
    	System.out.println("자동차가 달립니다.");
    }
}

방법 1, 2, 3, 4 모두 출력 값은 같다.

분명히 사용하려는 목적에 따라 장, 단점이 존재할 것이지만 아직 입문 단계라 그 장, 단점을 피부로 느끼지는 못했다.

 

태어나서 처음 접한 컴퓨터 언어는 낯설고 생소하지만 분명히 재미있다.

더 알고 싶고, 여러 상황을 많이 접해보고 싶지만 정말 어려운 것은 사실이다.

 

위 내용 중에서 내가 의문을 갖는 점이 있다면,

방법 4에서 class 자동차 안의 void 앞에 static을 붙여놓지는 않았지만 static을 붙여도 오류 없이 실행이 되었다.

 

return 하는 경우에는 void를 사용하지 않고, 

static을 사용한 class 안에서는 함수를 사용할 때 static을 붙여줘야 한다고 알고 있다.

새로 만든 class 자동차 안에서 함수를 만들어보다가도 어느 상황에서는 static을 붙이면 '짜잔' 오류가 발생한다.

 

void, static 을 어느 상황에서 적절하게 사용하는 게 옳은 것인지 아직 감이 없어서 제법 난감하다.

명확한 구분이 오는 그 날까지 아자아자 파이팅이다.

 

 

 

 

 

728x90
반응형
LIST

'Java' 카테고리의 다른 글

java 주석문  (0) 2020.04.28
java 생성자 메소드.  (0) 2020.04.28
객체배열 선언 방법 3가지  (0) 2020.04.25
객체배열 기초(연속된 변수)  (0) 2020.04.25
지역변수와 인스턴스 변수  (0) 2020.04.24