Java
-
오버로딩 & 오버라이딩의 결정 시점 차이 (Overloading & Overriding)Java 2020. 2. 6. 13:18
오버로딩(Overloading)과 오버라이딩(Overriding)은 객체지향의 특징 중 하나인 다형성을 지원하는 방법입니다. 아시듯이, 오버로딩(Overloading)은 한 클래스 내에서 각각 다른 파라미터를 가진 동명의 메소드를 정의한 것이고, 오버라이딩(Overriding)은 상속된 클래스에서 부모 클래스에 존재하는 메소드를 재정의한 것이지요. 이 두 개념을 자바에서 구현할 때 차이점이 있습니다. 특히 오버로딩을 사용할 때 주의해서 사용해야 합니다. 오버로딩과 오버라이딩된 동명의 메소드들 중에서 사용할 메소드를 결정하는 시점에 차이가 있습니다. 1. 오버로딩(Overloading) & 오버라이딩(Overriding) 메소드 결정 시점 (JAVA) - 오버로딩된 메소드는 컴파일(Compile) 시에 어..
-
Java - ExecutorService 병렬처리 알아보기 (Feat. Lucene OpenSource)Java 2020. 1. 31. 00:27
1. ExecutorService Interface ExecutorService란 java.util.concurrent 패키지에서 제공하는 인터페이스로서, Executor 인터페이스를 상속받습니다. ExecutorService가 속한 패키지명을 보면, 짐작하시듯 병렬처리에 관련된 인터페이스입니다. 그렇다면 ExecutorService는 어떤 기능을 하며, Executor에서 무엇이 확장되었을까요? 아래의 다이아그램을 보도록 하겠습니다. Executor는 execute 메소드를 통해 Runnable의 객체 command를 새로운 스레드에서 실행할 수 있도록 되어 있습니다. Runnable 인터페이스의 한계로 Executor를 사용하면 반환값 없이 실행만 가능합니다. ExecutorService는 오버로딩(..