Exception analyses so far cannot provide information on the propagation of thrown exceptions, which is necessary to construct interprocedural control flow graph, visualize exception propagation, and slice exception-related parts of programs. In this paper, we propose a set-based analysis, which estimates exception propagation of Java programs. To formalize exception propagation, we first describes an operational semantics with exception propagation taken into consideration. We design a set-based analysis to estimates exception propagation based on this operational semantics, and show its correctness. We also provide some applications of the analysis.