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
|