전체 글 92

Java - 오버라이딩(Overriding)과 오버로딩(Overloading)

비슷한 이름 때문인지 공부해놓고 시간이 지나면 항상 헷갈리는 그 개념 바로 오버라이딩과 오버로딩에 대해 정리해놓을까 한다. 오버로딩이란? 자바의 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메소드가 있어도 매개변수의 개수 또는 타입이 다르면 같은 이름을 사용해 메소드를 정의할 수 있는 것이다. 오버로딩의 경우 리턴타입이나 접근 지정자는 영향을 주지 않는다. 즉 이름이 같더라도 매개 변수만 다르다면 같은 이름의 함수를 사용하더라도 정상 작동한다는 것이다. 오버라이딩이란? 부모 클래스로부터 상속받은 메소드를 자식 클래스에서 재정의하는 것으로 쉽게 말하면 덮어쓰기라고 생각하면 된다 :) 그러나 오버로딩과 다르게 오버라이딩의 경우 메소드의 이름, 매개변수, 리턴타입이 모두 같아야 한다. 유의해야 할..

Java 2022.09.06

Java - 입력에서 문자(char) 하나 받아오기

과거의 나와 같은 사람이 있지 않을까 해서 쓰는 정보 자바를 공부하면서 다른 언어와 유사하게 double, int, char, String 의 데이터 타입이 존재함은 알고 있었다. 그런데 한가지의 문제를 마주하게 되는데 Scanner 개념을 배운 후 문자와 관련된 문제를 푸는데 아무리 찾아봐도 nextInt(), nextDouble(), nextByte(), 심지어 nextBoolean()도 있으나 nextChar()는 보이지 않는 것이다.. 뭐지? 싶어서 찾아봤는데 자바의 경우 String으로 데이터를 받아 charAt() 이라는 함수를 통해서 문자 하나를 추출할 수 있다고 한다. Scanner scan = new Scanner(System.in); String input = scan.nextLine(..

Java 2022.09.05