JEP 394

GPTKB entity

Statements (626)
Predicate Object
gptkbp:instance_of gptkb:Java_2_Platform
gptkb:JEP
gptkbp:addresses Security vulnerabilities
Type safety issues
thread stack processing
documentation gaps
gptkbp:adds new tags
gptkbp:advances gptkb:Javadoc
gptkbp:affects Java developers
gptkbp:aims_to Enhance security features
simplify type checks
Simplify the JDK
Simplify type checks
Improve observability of Java applications.
make documentation more accessible
reduce overhead of event collection
gptkbp:aims_to_improve Graphics performance
performance of garbage collection
gptkbp:allows Type casting in a single operation
conditional extraction of variables
event filtering and aggregation
gptkbp:api java.lang.
gptkbp:applies_to Java SE 14 Platform Specification
gptkbp:approves September 2020
December 2020
gptkbp:author gptkb:Mark_Reinhold
gptkb:Jesse_Glick
JDK Release Team
JEP Authors
gptkbp:benefits Reduces boilerplate code.
Successful implementation.
Evaluated for effectiveness.
Considered a success.
Key success factors identified.
Improves readability and reduces boilerplate code.
Real-time monitoring of application performance.
Prevents deserialization attacks.
Received constructive feedback.
reduces pause times
gptkbp:challenges Backward compatibility
Backward compatibility.
Overcame technical challenges.
Ensuring backward compatibility.
Insecure deserialization.
gptkbp:code Available in the documentation.
instanceof with pattern matching.
gptkbp:collaborated_with Industry partners
Open source projects
by industry leaders
by multiple contributors
gptkbp:collaboration gptkb:Java_community
gptkbp:collaborative_projects Collaborative effort.
Plan for collaboration.
gptkbp:community_engagement Active discussions.
Engaged with the Java community.
gptkbp:community_feedback Positive
Constructive feedback received.
Enthusiastic.
gptkbp:community_impact Significant impact on Java community.
gptkbp:community_involvement Engaged with Java community.
Open for contributions.
gptkbp:community_outreach Engaged with developers.
gptkbp:community_support Strong community backing.
Strong community support.
Active forums and discussions.
gptkbp:compatibility Backward compatible.
gptkbp:conformance Conforms to Java Language Specification.
Conforms to Java SE specifications.
Conforms to Java standards.
Follows Java serialization standards.
gptkbp:consequences Modules will not be available in future JDKs
gptkbp:contains Multiple examples in the documentation.
gptkbp:contributes_to gptkb:Java_security_model
Java performance improvements
gptkbp:contribution Community contributions.
Community contributions accepted
Available on Open JDK.
Contributes to the evolution of Java.
Enhances language expressiveness.
Contributed to Java's evolution.
gptkbp:coverage Extensive unit tests.
gptkbp:created 2020-10-20
gptkbp:customer_satisfaction High satisfaction rates.
gptkbp:dependency gptkb:None
None.
JDK 17.
Java SE.
JFR.
JMX.
Java Management Extensions.
Java SE 16 features.
gptkbp:describes gptkb:Pattern_Matching_for_instanceof
New Security Enhancements in JDK 11
JDK 14 Documentation Enhancements
JDK 14 Support
gptkbp:description Enhances the instanceof operator to allow pattern matching.
Introduces a new rendering pipeline for mac OS.
Provides a mechanism for streaming events from the Java Flight Recorder.
Provides a mechanism for context-specific deserialization.
gptkbp:design Simplicity and security.
gptkbp:development Java language team.
gptkbp:discusses https://openjdk.java.net/jeps/394
Open JDK mailing list.
Open JDK mailing lists
gptkbp:education Rapid user adoption.
gptkbp:educational_resources Tutorials available online.
gptkbp:educational_value Facilitates learning.
gptkbp:enables Null-safe type checks
real-time monitoring of Java applications
gptkbp:enhances code examples
application responsiveness
Type inference
Javadoc tool
instanceof operator
More pattern matching features.
observability of Java applications
Potential for more pattern types.
gptkbp:evaluates Adoption metrics are positive.
Evaluated by the JDK community.
gptkbp:example if (obj instanceof String s) { ... }
Deserializing JSON with context.
gptkbp:facilitates integration with monitoring tools
gptkbp:features Type Patterns.
gptkbp:feedback Positive from the community.
Positive from the developer community.
gptkbp:first_published 2021-02-16
August 2021
March 2021
gptkbp:focuses_on Java API documentation
concurrent operations
gptkbp:funding Funded by Oracle.
gptkbp:future_goals Continued evolution of Java.
gptkbp:future_prospects Improved user interface.
Further enhancements to pattern matching.
Documentation improvements.
Enhancements to event types.
Integration with monitoring tools.
Support for additional platforms.
Monitor usage and security.
Monitor usage of deprecated modules
Further enhancements in future JDKs.
gptkbp:goal Enhance deserialization capabilities.
gptkbp:goals Modernize the JDK
gptkbp:governance Open JDK governance.
gptkbp:has_documentation Well-documented.
Available on Open JDK website.
Comprehensive API documentation available.
Well documented.
gptkbp:has_version Introduced in JDK 14.
gptkbp:historical_achievement Java documentation
Achieved key milestones.
https://www.w3.org/2000/01/rdf-schema#label JEP 394
gptkbp:impact Metrics established.
Assessment completed.
Removes legacy modules
Simplifies the JDK
Simplifies the common coding pattern.
Simplifies the common coding pattern of type checking and casting.
Significant impact on Java development.
Enhances the Java ecosystem.
Improves security and flexibility in deserialization.
Applications using JMX will need to adapt
gptkbp:impact_on_code Simplifies code structure.
gptkbp:impact_on_codebase Reduces complexity.
gptkbp:impact_on_legacy_code Requires updates.
gptkbp:impact_on_performance_metrics No significant performance degradation.
gptkbp:implementation_impact Significant impact on code quality.
gptkbp:implementation_success Considered a success.
gptkbp:improves Code readability
performance analysis
code readability
memory management
Application security
documentation quality
linking between documents
gptkbp:includes new features
TLS 1.3 support
Improved cryptographic algorithms
Security Manager enhancements
gptkbp:influences Future Java language features
gptkbp:innovation Innovative approach to type checking.
gptkbp:introduced_in gptkb:JDK_17
gptkb:2020
gptkb:Java_11
gptkb:Java_16
gptkb:JDK_11
gptkb:JDK_16
gptkb:Java_17
gptkbp:involved_technology gptkb:CORBA
gptkb:Java_Virtual_Machine
gptkb:Jakarta_EE
Kubernetes.
Elastic Stack.
Grafana.
JMX.
Prometheus.
JSON, XML.
gptkbp:is_a_resource_for Forums and discussion groups.
gptkbp:is_about gptkb:Pattern_Matching_for_instanceof
gptkbp:is_adopted_by gptkb:Limited
gptkb:Non-profit_organizations
gptkb:Java_frameworks
gptkb:Open_JDK
enterprise applications
Financial applications
open-source projects
Government applications
Enterprise applications
Java developers
High.
High among Java developers.
High among enterprise applications.
Java startups
Used in many projects.
Widely adopted in Java 16.
Widely adopted in production systems.
Widely adopted in Java 14.
gptkbp:is_aimed_at Java developers
improving clarity
gptkbp:is_aligned_with Industry standards
modern web standards
gptkbp:is_analyzed_in Research papers
Technical papers
Java blogs
gptkbp:is_associated_with Java documentation standards
gptkbp:is_available_in Java distributions
gptkbp:is_available_on gptkb:Git_Hub
gptkbp:is_cited_in gptkb:Documentation
Security best practices
academic papers
gptkbp:is_compared_to previous JDK documentation
gptkbp:is_compatible_with gptkb:Java_SE_8
Existing Java code
gptkbp:is_considered Java language evolution
future Java versions
gptkbp:is_critiqued_by Java critics
gptkbp:is_described_as gptkb:Java_2_Platform
online tutorials
technical articles
Java courses
gptkbp:is_designed_for production environments
gptkbp:is_designed_to technical writers
enhance usability
gptkbp:is_discussed_in gptkb:Java_conferences
gptkb:Java_Community_Process
Meetups
Technical blogs
Java forums
Java podcasts
technical meetups
gptkbp:is_documented_in gptkb:JEP
Technical specifications
Release notes
release notes
User manuals
Java documentation
Open JDK documentation
Open JDK website
gptkbp:is_enhanced_by Community contributions
gptkbp:is_essential_for gptkb:High
gptkbp:is_evaluated_by gptkb:Java_community
Risk assessment
Java developers
Security analysts
software engineers
Performance impact
Security posture
Java experts
Compliance teams
Security consultants
Java assessments
gptkbp:is_expected_to improve developer experience
gptkbp:is_explored_in Java tutorials
Java workshops
gptkbp:is_implemented_in gptkb:JDK_17
gptkb:Java_programming_language
gptkb:JDK_14
gptkb:ZGC
gptkb:Java_Development_Kit_(JDK)
gptkb:Open_JDK
Completed
Java developers
Implemented in the Java compiler.
Complexity in design.
Java.
Completed.
Implemented in JDK 16.
Part of JDK 16.
Part of the JDK.
Addressed during development.
Complexity in legacy systems.
gptkbp:is_influenced_by Functional programming
user feedback
documentation best practices
previous JEPs
Previous JEPs on security
gptkbp:is_integrated_with Development tools
Monitoring tools
CI/ CD pipelines
gptkbp:is_monitored_by Recommended post-implementation.
gptkbp:is_motivated_by Reduce the size of the JDK
Remove obsolete technologies from the JDK
gptkbp:is_part_of gptkb:Java_SE_11
gptkb:Java_SE_Platform
gptkb:Java_2_Platform
gptkb:Java_programming_language
gptkb:Java_SE_14
gptkb:Java_ecosystem
Java development process
Java platform evolution
Java's evolution
JDK 11 release
Java 14 release
Java performance tuning.
Java documentation ecosystem
gptkbp:is_promoted_by Tech influencers
Java meetups
Java advocates
Java influencers
gptkbp:is_promoted_through Social media campaigns
Webinars
gptkbp:is_recognized_by industry experts
Security experts
gptkbp:is_referenced_in Security guidelines
Technical documentation
Security audits
Security frameworks
Java specifications
Java tutorials
Java books
gptkbp:is_related_to gptkb:JEP_411
gptkb:JEP_385
gptkb:JEP_395
gptkb:Garbage_Collection
gptkb:JEP_305
gptkbp:is_reviewed_by gptkb:Java_Community_Process
gptkb:Java_community
peer reviewers
Java experts
Technical reviews
Java journals
gptkbp:is_supported_by gptkb:Java_Development_Kit_(JDK)
gptkb:Java_Virtual_Machine_(JVM)
gptkb:Java_community
gptkb:Java_libraries
gptkb:Open_JDK
Multiple platforms
Training materials
Java developers
Java IDEs
Java user groups
User communities
Documentation updates
Java community initiatives
gptkbp:is_taught_in Low.
gptkbp:is_tested_for real-world scenarios
development environments
Quality assurance teams
Compliance standards
Security tools
Security benchmarks
Extensively tested.
Java testing frameworks
Java environments
Java performance benchmarks
Java test suites
Extensive testing recommended.
gptkbp:is_utilized_by gptkb:developers
Startups
gptkbp:is_utilized_in Web applications
Java applications
Cloud applications
Java enterprise applications
gptkbp:key Simplifies type checking.
Enhances security in Java applications.
gptkbp:key_feature gptkb:JDK_14
Type-safe pattern matching.
gptkbp:key_insights Pattern matching is a valuable feature.
gptkbp:key_learnings Importance of community input.
gptkbp:language Pattern Matching
gptkbp:latest_version gptkb:Java_17
1.0
1.0.
gptkbp:legacy Influenced future Java features.
gptkbp:library Java Standard Library.
gptkbp:license GNU General Public License.
gptkbp:modern_relevance Highly relevant in modern Java.
gptkbp:notable_contributor gptkb:Oracle_Corporation
open-source documentation
gptkbp:notable_production Minimal
Streamlines development process.
gptkbp:originated_in better documentation tools
gptkbp:outcome Improved code clarity.
Enhanced language features.
gptkbp:performance Minimal.
Minimal impact.
Minimal overhead.
Improved performance in some cases.
gptkbp:plot_summary Introduces pattern matching for instanceof.
Deprecation of Java EE and CORBA Modules
Support for the Java SE 14 Platform Specification.
gptkbp:presented_by gptkb:Java_conferences
gptkbp:project gptkb:Helidon
gptkb:Jakarta_EE_9
gptkb:Jakarta_EE_8
gptkb:Java_SE_11
gptkb:Java_SE_17
gptkb:Java_SE_8
gptkb:Apache_Software_Foundation
gptkb:Eclipse_Foundation
gptkb:Java_SE_10
gptkb:Java_SE_12
gptkb:Java_SE_13
gptkb:Java_SE_9
gptkb:Java_SE_14
gptkb:Java_SE_16
gptkb:Java_SE_15
gptkb:Quark
gptkb:Micro_Profile
gptkb:Spring_Framework
gptkb:Open_JDK
Plans for future enhancements.
Goals achieved.
Brian Goetz.
Continued evolution of Java.
Open JDK.
Completed in 2020.
Improve developer productivity.
Modernize Java language.
Recognized in the Java community.
gptkbp:project_collaboration_metrics Metrics for collaboration.
gptkbp:project_collaboration_metrics_established Metrics established.
gptkbp:project_collaboration_plan_metrics Metrics for collaboration plan.
gptkbp:project_collaboration_plan_metrics_established Metrics established.
gptkbp:project_documentation_metrics Metrics for documentation.
gptkbp:project_documentation_metrics_established Metrics established.
gptkbp:project_documentation_plan Plan for documentation.
gptkbp:project_documentation_plan_established Plan established.
gptkbp:project_evaluation_criteria Criteria established.
gptkbp:project_evaluation_criteria_established Criteria established.
gptkbp:project_evaluation_metrics Metrics for evaluation.
gptkbp:project_evaluation_metrics_established Metrics established.
gptkbp:project_feedback_mechanism Mechanism for feedback established.
gptkbp:project_feedback_mechanism_established Mechanism established.
gptkbp:project_future_metrics Metrics for future planning.
gptkbp:project_future_metrics_established Metrics established.
gptkbp:project_future_plans_metrics Metrics for future plans.
gptkbp:project_future_plans_metrics_established Metrics established.
gptkbp:project_impact_assessment_metrics Metrics for impact assessment.
gptkbp:project_impact_assessment_metrics_established Metrics established.
gptkbp:project_impact_metrics Metrics for impact.
gptkbp:project_impact_metrics_established Metrics established.
gptkbp:project_innovation_metrics Metrics for innovation.
gptkbp:project_innovation_metrics_established Metrics established.
gptkbp:project_innovation_plan Plan for innovation.
gptkbp:project_innovation_plan_metrics Metrics for innovation plan.
gptkbp:project_innovation_plan_metrics_established Metrics established.
gptkbp:project_outreach_metrics Metrics for outreach.
gptkbp:project_outreach_metrics_established Metrics established.
gptkbp:project_outreach_plan Plan for outreach.
gptkbp:project_outreach_plan_established Plan established.
gptkbp:project_recognition_metrics Metrics for recognition.
gptkbp:project_recognition_metrics_established Metrics established.
gptkbp:project_recognition_plan Plan for recognition.
gptkbp:project_recognition_plan_established Plan established.
gptkbp:project_stakeholder_engagement_metrics Metrics for engagement.
gptkbp:project_stakeholder_engagement_metrics_established Metrics established.
gptkbp:project_stakeholder_engagement_strategy_established Strategy established.
gptkbp:project_stakeholder_metrics Metrics for stakeholders.
gptkbp:project_stakeholder_metrics_established Metrics established.
gptkbp:project_success_factors_identified Factors identified.
gptkbp:project_success_factors_identified_established Factors identified.
gptkbp:project_success_metrics_established Metrics established.
gptkbp:project_sustainability_metrics Metrics for sustainability.
gptkbp:project_sustainability_metrics_established Metrics established.
gptkbp:project_sustainability_plan Plan for sustainability.
gptkbp:project_sustainability_plan_metrics Metrics for sustainability plan.
gptkbp:project_sustainability_plan_metrics_established Metrics established.
gptkbp:project_timeline_metrics Metrics for timeline.
gptkbp:project_timeline_metrics_established Metrics established.
gptkbp:project_timeline_milestones Milestones tracked.
gptkbp:project_vision_metrics Metrics for vision.
gptkbp:project_vision_metrics_established Metrics established.
gptkbp:project_vision_statement Vision for modern Java.
gptkbp:proposed_by gptkb:Oracle
gptkb:Oracle_Corporation
gptkb:JDK_14
gptkb:JDK_16
gptkb:Mark_Reinhold
Future Java versions
Remove the CORBA modules
Remove the Java EE modules
Concurrent processing of thread stacks in Z Garbage Collector
Remove the Java Management Extensions (JMX) Modules
gptkbp:provides Cleaner syntax for type checks
a new syntax for instanceof
better search capabilities
Type pattern syntax
event data in a continuous stream
Enhanced security APIs
gptkbp:published_in January 2021
gptkbp:reduces Boilerplate code
gptkbp:related_concept gptkb:ISO/_IEC_24765
ISO/ IEC 30170.
Java SE Specification.
OMG CORBA
gptkbp:related_jeps gptkb:JEP_411
gptkb:JEP_393
gptkb:JEP_290
gptkb:JEP_305
gptkb:JEP_320
JEP 328.
JEP 386.
JEP 391.
gptkbp:related_to gptkb:Kotlin
gptkb:JEP_395
gptkb:Z_Garbage_Collector
gptkb:Java_SE_11
gptkb:Java_Flight_Recorder
gptkb:Java_FX
gptkb:Java_Language
Type checking
instanceof operator
Type casting
gptkbp:release_date March 2020
September 2021
September 2021.
March 2021.
gptkbp:release_notes Included in JDK 14 release notes.
gptkbp:released gptkb:JDK_17
gptkb:Java_SE_14
gptkb:JDK_16
gptkb:Java_17
gptkbp:replaced_by Java EE Modules
CORBA Modules
gptkbp:requires gptkb:Java_SE_16
JDK 17 or later
JVM support
JDK 11 or later
Java Flight Recorder.
Java SE 16 or later
Java Development Kit (JDK) 16 or later
gptkbp:reviews gptkb:Brian_Goetz
gptkb:Venkat_Subramaniam
gptkb:Jesse_Glick
2021-01-12
Various community members
Community review process.
Various contributors.
Various members of the Open JDK community
gptkbp:scope Focused on pattern matching.
gptkbp:security No new security risks.
gptkbp:security_features Context-aware deserialization.
gptkbp:specification Java Language Specification.
Defines rules for deserialization based on context.
JDK 14 API Documentation
gptkbp:specifies Java Flight Recorder (JFR) event streaming
gptkbp:stakeholders Engagement strategy developed.
Java developers.
Java developers, security experts.
Involved stakeholders identified.
gptkbp:status gptkb:Final
gptkb:Preview
Standard Feature
gptkbp:success Adopted by major companies.
Successful removal in future JDKs
gptkbp:success_rate Improved user satisfaction.
Measured by adoption and usage.
Enhanced developer productivity.
Higher application reliability.
Increased performance insights.
Reduced troubleshooting time.
Reduction in deserialization vulnerabilities.
gptkbp:support Supported by major IDEs.
gptkbp:supports gptkb:HTML5
multiple consumers of event data
gptkbp:sustainability_efforts Sustainable development.
gptkbp:target_jdk gptkb:JDK_17
gptkb:JDK_11
gptkb:JDK_14
gptkb:JDK_16
JDK 17.
JDK 14 features.
gptkbp:targets gptkb:mac_OS
gptkbp:title gptkb:Pattern_Matching_for_instanceof
gptkb:JFR:_Event_Streaming
gptkb:JFR_Event_Streaming
gptkb:New_mac_OS_Rendering_Pipeline
ZGC: Concurrent Thread-Stack Processing
Context-Specific Deserialization
Deprecate the Java EE and CORBA Modules for Removal
gptkbp:training Available for developers.
gptkbp:trends Increased use of pattern matching.
gptkbp:updates Planned for JDK 17.
gptkbp:usage Commonly used in modern Java applications.
gptkbp:use_case Performance tuning.
Compliance.
Type checking and casting.
Troubleshooting.
Capacity planning.
Securely deserialize data from untrusted sources.
Type checking with pattern matching.
gptkbp:user_base Java developers worldwide.
gptkbp:user_feedback Increased productivity.
Generally favorable.
Positive user feedback.
gptkbp:user_manual User guide available.
gptkbp:was_a_response_to developer needs
gptkbp:was_a_result_of community contributions
ongoing improvements in Java
gptkbp:bfsParent gptkb:JDK_17
gptkb:JEP_389
gptkb:JEP_390
gptkb:JEP_33
gptkb:JEP_35
gptkb:Shenandoah
gptkb:Java_SE_16
gptkb:JDK_10
gptkb:JDK_14
gptkb:JDK_15
gptkb:JDK_18
gptkb:JEP_488
gptkb:Java_SE_15
gptkb:Java_10
gptkb:Open_JDK
gptkbp:bfsLayer 5