The @Java construct lets you embed a Java Call directly into the Expression Language.
It always you to inline a call to Java, without having to create an explicit Java Step/Method.
The difference between using a Java Step/Method is that the expected use here is for the Java to return a value , which can then be used in an expression
- whereas a Java Method is more suited to more complex 'imperative' code; and where there isn't necessarily a return-value/status.
Note: 'Deprecated' doesn't mean "You cannot use this" - it just means that the feature in question is less favoured than it used to be, and that the feature may be not be available in a future release; so where possible - use an alternative.
Feature Deprecation isn't unique to the Pega Platform; for instance the Java API has evolved over time and features/APIs that were standard at the time, have been subsequently marked as deprecated - to forewarn that the feature in question may be removed in a future version.
As PRPC evolves; many older OOTB Rules are migrated across versions; and some of the older rules will be found to be using (now) deprecated-features.
As per my understanding the statement asks you to use the equivalent utility function if it already exists in the system else you can create a new function and place your java code into it then try to call the function instead of using @java.