안녕하세요 자바를 시작한지 별로 안된 사람입니다.
이 강의에서의 질문은 아니지만 자바 입문자를 대상으로 하는 강의 처럼 보여서 질문을 드립니다. 자바에서는 함수 대신 메서드라고 표현하더라구요. 그리고 자료형을 제시해야하는 정적 타이핑 언이이기도 하고요. 이 정적 타이핑에 대한 것이 질문의 핵심입니다. 만약 조건에 따라 다른 자료형을 리턴한다고 가정해보겠습니다.
public static returnTwoType() {
if (true) {
return '1';
} else {
return 1;
}
}
실제로 이런 메서드는 존재하지 않겠죠 리턴값은 있지만 메서드 선언문에 자료형이 제시가 안되어 있으니까요. 만약 이런식으로 어떠한 조건때문에 리턴값의 타입이 두 가지 혹은 그 이상으로 나뉘게 된다면 어떤 자료형으로 메서드를 선언해야 할까요?
回答 1
0
그냥 웬간한 랭귀지에서 사용하는 컨벤션(관습, 관례)인데, 객체 안에서 사용되는 함수를 메서드라고 부릅니다.
이렇게 암묵적 약속이 되면 서로 얘기하기도 편하고 이해하기도 편하니까요...
그리고 자바, C, C++ 등은 변수 선언에 엄격한 이유로 변수 사용시 데이터 타입을 오해하여 발생하는 에러가 발생하지 않습니다.
반면 JS 등은 선언은 편하지만 사용할 때 변수의 타입을 의심해봐야 하는 불편한 점이 생깁니다.
하나가 편하면 하나는 불편해 지는 겁니다.
어쨌든 자바에서는 말씀하신 것처럼 사용할 수 있는 자료형은 없습니다.
굳이 필요하다면 객체를 리턴하고 그 객체에 알맞게 데이터를 저장하고 꺼내는 로직을 구현하여 사용할 수는 있겠지만 자바에서 사용할 만한 방법은 아닙니다.
강의 자료
0
15
1
setter 사용하지 않기
0
14
1
27:15 break 출력
0
13
1
세션을 제대로 이해한게 맞는지 궁금합니다
0
12
0
55강 파이썬에만있는 연산자들
0
30
2
55강의 파이썬에서만 있는 연산자들
0
22
2
안녕하세요 토비님 혹시 완성된 코드의 repository 주소는 없을까요?
0
30
2
강의 영상 업로드 질문
0
36
2
자막 오타 제보
0
30
1
운영환경에 적용해볼 수 없을때...고민입니다 ㅠㅠ
0
32
1
13 섹션 병렬 스트림 고급 1탄 매치 문의
0
36
2
29강 5:00
0
34
2
3차원 배열의 인덱스 해석 순서와 3중 반복문 순회 메커니즘에 대해 질문드립니다.
0
26
1
인텔리제이 설정 최신화 관련 확인 부탁 드립니다!
1
48
2
띄어쓰기
0
41
2
공부 순서
1
51
2
코딩 문제 사이트 접속 오류
0
28
1
재귀함수 연산법
0
33
2
동일성 동등성
0
27
1
안녕하세요 치킨 디도스 이벤트 보고 흉내내보려 들어왔습니다..
0
30
2
반복문 사용하기
1
343
1
강의가 재생이안되요
0
261
1
질문드립니다
0
296
2
책 전용의 강의가 아니에요~
0
341
1

