Spec-Zone.ru › Scala 3.2

Класс deprecatedOverriding.deprecatedOverriding

Исходный код

class deprecatedOverriding(message: String, since: String) extends ConstantAnnotation

Аннотация, которая обозначает, что переопределение члена устарело.

Переопределение такого члена в подклассе генерирует предупреждение.

Авторы библиотек должны указать политику устаревания библиотеки в своей документации, чтобы дать разработчикам рекомендации о том, когда метод, помеченный с помощью @deprecatedOverriding, будет final.

Авторы библиотек должны добавлять имя своей библиотеки перед номером версии, чтобы помочь разработчикам отличать устаревания, исходящие из разных библиотек:

class Foo {
  @deprecatedOverriding("this method will be made final", "FooLib 12.0")
  def add(x: Int, y: Int) = x + y
}
class Bar extends Foo // no deprecation warning
class Baz extends Foo {
  override def add(x: Int, y: Int) = x - y
}
// warning: overriding method add in class Foo is deprecated (since FooLib 12.0): this method will be made final
// override def add(x: Int, y: Int) = x - y
//              ^
Параметры значения
message

сообщение, которое будет выведено во время компиляции, если член был переопределен

since

строка, определяющая первую версию, в которой переопределение устарело

См. также

scala.deprecated

scala.deprecatedInheritance

scala.deprecatedName

Надтипы
Тракт ConstantAnnotation
Тракт StaticAnnotation
Класс Annotation
Класс Object
Тракт Matchable
Класс Any

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/deprecatedOverriding.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API