결론을 먼저 말하면 thorw는 예외를 발생시키는 데 사용, throws는 메소드가 발생시킬 수 있는 예외를 명시하여 해당 예외를 호출하는 쪽으로 던지는 데 사용된다.

 

 

throw와 throws는 예외 처리 관련 키워드이다.

 

1. throw

 

throw는 예외를 발생시키는 데 사용된다. 예외가 발생할 조건이 만족될 때, 프로그래머가 직접적으로 예외를 발생시키고자 할 때 사용된다.

일반적으로 throw는 메소드 내부에서 사용되며, 메소드가 특정 조건에 맞지 않고나 예외 상황에 놓였을 때 예외를 발생시키는 데 쓰인다.

 

2. throws

 

thorws는 예외를 떠넘길 때 사용된다.

메소드 선언부에 사용되며, 해당 메소드가 발생시킬 수 있는 예외를 명시한다.

이는 해당 메소드를 호출하는 코드에서 그 예외에 대한 처리를 해야 함을 알려줍니다.

thorws를 통해 메소드가 예외를 던질 수 있음을 표시, 이러한 예외들은 메소드를 호출하는 곳에서 처리해야 한다.

 

thorws절이 있는 메소드를 오버라이딩할 때는 메서드에서 선언한 예외보다 더 광범위한 검사형 예외를 던질 수 없다. 또, 부모 클래스의 메서드에 예외를 떠넘기는 throws절이 없다면 자식 클래스가 메서드를 오버라이딩할 때 어떤 예외도 떠넘길 수가 없다.

 

 

 

'자바' 카테고리의 다른 글

[Java] getter와 setter  (0) 2024.04.03
[JAVA] 메서드 오버로딩  (1) 2024.04.03

getter는 인스턴스 변수를 반환하고

setter는 인스턴스 변수를 대입하거나 수정한다.

 

getter는 변수 앞에 get을,

setter는 변수 앞에 set을 붙이고 그 변수들의 앞글자는 대문자로 한다.

	public double getRadius() {
		return radius;
	}

	public void setRadius(double radius) {
		this.radius = radius;
	}

 

getter은 객체의 변수를 반환하고,

setter는 파라미터를 받아  변수에 할당한다.

 

getter와 setter를 사용하는 이유

필드를 캡슐화하게되면 외부에서 읽어올 수 없다.

이 때 쓰는게 getter와 setter이다. 

캡슐화를 하는 이유는 내부 데이터를 숨겨서 외부 영향을 받지 않도록 하는 것이다.

'자바' 카테고리의 다른 글

[JAVA] throw와 throws의 차이  (0) 2024.04.09
[JAVA] 메서드 오버로딩  (1) 2024.04.03

메서드 오버로딩이란 메서드 이름은 같지만 메서드 시그니처가 다른 메서드를 정의하는 것이다.

메서드 시그니처란 메서드 이름, 매개변수의 개수, 매개변수의 데이터 타입, 매개변수의 순서를 의미한다.

 

메서드 이름이 동일하더라도 매개변수 개수, 데이터 타입, 순서 중 하나라도 다르면 서로 다른 메서드로 취급한다.

 

'자바' 카테고리의 다른 글

[JAVA] throw와 throws의 차이  (0) 2024.04.09
[Java] getter와 setter  (0) 2024.04.03

+ Recent posts