# Deprecate finalizers? As done in Java 18

**URL:** <https://discourse.julialang.org/t/deprecate-finalizers-as-done-in-java-18/78632>\
**Category:** General Usage\
**Created:** [March 28, 2022, 6:14pm UTC](https://discourse.julialang.org/t/deprecate-finalizers-as-done-in-java-18/78632 "2022-03-28T18:14:12Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Palli](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/palli/32/3380_2.png) [@Palli](https://discourse.julialang.org/u/Palli)\
**Post date:** [March 28, 2022, 6:14pm UTC](https://discourse.julialang.org/t/deprecate-finalizers-as-done-in-java-18/78632/1 "2022-03-28T18:14:12Z")

</div>

I believe Julia has finalizers (never looked into very carefully). Otherwise just ignore, read as Java trivia.

Java 1 introduced finalizers (and just released Java 18 deprecated them). Are they similiar enough in Julia (and e.g. C#) to also be a mistake there? C# has finalizers, renamed from destructors, their original misleading name, as the feature in C# more like Java, unlike C++'s destructors.

> **[Java finalize() - Why We Should Not Use It?](https://howtodoinjava.com/java/basics/why-not-to-use-finalize-method-in-java/)**
>
> Learn Java finalize() signature, the purpose of finalization, how can we call finalize() method manually, and why you should not use it.

# JEP 421: Deprecate Finalization for Removal

> **[JEP 421: Deprecate Finalization for Removal](https://openjdk.org/jeps/421)**

---

<div class="post-metadata">

**Author:** ![Oscar\_Smith](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/oscar_smith/32/25343_2.png) [@Oscar\_Smith](https://discourse.julialang.org/u/Oscar_Smith)\
**Post date:** [March 28, 2022, 6:23pm UTC](https://discourse.julialang.org/t/deprecate-finalizers-as-done-in-java-18/78632/2 "2022-03-28T18:23:11Z")

</div>

As I understand it, Julia’s finalizes are much closer to Java’s Cleaners which are what they recommend replacing finalizes with.
