The concept of Preview Features is already well established in Java. It provides a way to make complete features available to developers before they become a permanent part of the platform.
This model has proven useful for Java because it creates a clear space for features that are more than experiments, but not yet permanent commitments of the platform. It gives developers the opportunity to evaluate the feature in realistic development scenarios, with real tools, and with a clear understanding that some changes may still happen.
Java Card can benefit from the same principle.
A Java Card Preview Feature is a new feature of the Java Card Platform whose design, specification, and implementation are complete, but whose status is still impermanent. It may become permanent in a future release, be refined and previewed again, or be withdrawn. The detailed technical rules are described in the specification.

Why Preview Features Matter for Java Card
The Java Card platform is used in products and environments where stability, compatibility, certification, and long-term support are very important. Many Java Card deployments are connected to industries with long product cycles, dependencies on external standards, regulatory constraints, and security certification programs. This naturally limits how frequently major platform releases can happen.
At the same time, waiting until a feature is fully specified, included as a permanent feature of the platform, and implemented in products has a cost. Feedback from application developers may arrive too late, when changing the specification could affect backward compatibility and significantly impact implementers’ product commitments.
Preview Features provide a controlled answer to this problem.
They allow a feature to be made available earlier, while making its impermanent status clear. Developers and implementers can try it. Product teams can understand it. Related standardization work can start with better visibility. But everyone also knows that the feature is not yet final.
This helps the platform evolve with more feedback, without weakening the meaning of a permanent Java Card specification.
Preview Does Not Mean Experimental
One important point is that “preview” should not be confused with “experimental.”
A Java Card Preview Feature is expected to be complete, technically sound, and implemented with the same level of care as a permanent platform feature. The purpose of preview is not to expose unstable ideas, but to expose mature proposals before they become irreversible.
That distinction matters.
For developers, it means a preview feature is worth evaluating seriously.
For product managers, it means preview features can be used to assess future platform direction, discuss concrete capabilities with stakeholders, and plan product roadmaps.
For implementers, it provides a controlled way to evaluate and, when appropriate, make new capabilities available before the release of the next platform version, while keeping their preview status explicit.
However, preview features remain impermanent. They may become permanent, they may be refined and previewed again, or they may be withdrawn.
How Preview Features Fit into the Java Card Platform
Preview Features are part of the Java Card Platform Specification process, but they do not change the status of the current permanent platform version.
A useful way to think about this is that the current Java Card platform release remains stable, while Preview Features provide early access to candidates for a future release.
In practice, Java Card Preview Features are made available through updates to the Java Card Development Kit. The list of Preview Features can be amended up to twice a year, and each update is accompanied by a JCDK release that developers can use for experimentation and evaluation. This means application developers can work with real tools, not only read specification text, making their feedback more concrete.
Some of these features may eventually be finalized and included as permanent features in the next version of the Java Card Platform Specification. Others may go through another preview cycle if feedback shows that refinement is needed. In some cases, a feature may be removed if it does not prove to be the right long-term direction.
This model gives the platform more flexibility while keeping Preview Features controlled, documented, and explicitly identified as not yet permanent. This is important to reduce the risk of fragmentation and to make implementation differences visible.
Explicit Opt-In for Developers
Because Preview Features are not permanent, developers must explicitly enable them when using the Java Card Development Kit tools.
This opt-in model is important. It ensures that developers are aware when their code depends on a feature that may not exist in the same form in a future platform release.
At a high level, this means that preview-enabled code is treated differently from ordinary Java Card code. If preview support is not enabled, attempts to use preview features result in tool errors. If preview support is enabled, the tools can accept the code but issue warnings to remind developers that they are relying on preview functionality whose availability or form may change in a future platform release.
This makes the contract clear: Preview Features are available for evaluation and feedback, but they should be used with an understanding of their lifecycle.
More Visibility for Product Teams
For product teams, Preview Features provide more visibility and predictability.
They make it easier to see which capabilities are being prepared for a future Java Card version, and to plan accordingly. They also make it possible to discuss future features earlier with customers and partners, using a concrete specification and implementation rather than only a high-level description.
This is useful for planning product roadmaps, aligning development work, and understanding possible future platform directions.
Preview Features can also help related standardization activities. When a future platform capability is visible earlier, related work in other standardization organizations can start sooner and remain consistent with the direction of the Java Card platform.
Including Application Developers Earlier in the Process
For application developers, Preview Features provide a way to participate earlier in the evolution of the Java Card platform.
Instead of discovering a new feature only when it becomes permanent, developers can try it before finalization. They can build prototypes, test real use cases, evaluate whether the API is clear, and identify practical issues that may not be visible during specification work alone.
This feedback is valuable because application developers see the platform from a different angle. They focus on how features are used in applications, how easy they are to adopt, and how naturally they fit with existing code.
Preview Features therefore help include application developers in the platform evolution process, while still making clear that preview code may need changes in the future.
A Balanced Approach to Platform Evolution
Preview Features are a way to make Java Card evolution more responsive without compromising the platform’s core values.
Permanent features must remain reliable. Compatibility must continue to be a strong commitment. At the same time, new capabilities should be exposed early enough to receive useful feedback before they are finalized.
Preview Features provide this balance.
They offer a controlled way to make future Java Card capabilities available earlier, without presenting them as final too soon. They give developers and implementers a practical way to evaluate new features. They give product teams more visibility. They also help future standardization work start from a clearer and more concrete basis.
In short, Java Card Preview Features are a mechanism to prepare future platform evolution in a more transparent and predictable way, while preserving the stability expected from the Java Card specification.
