Navigation
  • About US
    • COMPANY OVERVIEW
    • JOIN US TODAY
      • AS OUR SOFTWARE PUBLISHERS
      • AS OUR PROCUREMENT MANAGERS
      • AS OUR RESELLERS
    • CAREER WITH LOGON
    • CONTACT US
  • Solutions
    • SEARCH BY BRANDS
    • SEARCH BY CATEGORY
      • INFORMATION SECURITY SOLUTIONS
        • Vulnerability Management
        • Multifactor Authentication
        • Threat Intelligence
        • Network Management Solutions
        • Security Information and Event Management
        • Remote Access Software
        • Systems Administration Tools
        • Robotic Process Automation
        • Data Loss Prevention
        • Data / Password Recovery
        • Asset Management Solutions
        • Identity and Access Management
        • Antivirus
        • Activity Monitoring and Surveillance
        • Forensic Solutions
        • Content Disarm and Reconstruction
      • SOFTWARE DEVELOPMENT SOLUTIONS
        • Integrated Development Environments
        • Development Components
          • UI Components
          • Networking Components
          • Office Components
          • Barcode Components
          • Communication
        • Imaging Solutions
        • Software Localization
        • Release Automation & Management
        • eLearning Authoring Solutions
        • Charting Solutions
        • PDF Solutions
        • Reporting Solutions
        • Testing & QA
        • Text Retrieval/Enterprise Search
        • Database
  • Services
    • TRAINING SERVICES
    • IMPLEMENTATION SERVICES
    • AFTER-SALES SERVICES
    • BEST PRACTICES CONSULTING
  • What’s New
    • EVENTS
    • LATEST UPDATES
    • SPECIAL OFFERS
  • Search HERE
Software Asia Limited
MENUMENU
  • About US
    • COMPANY OVERVIEW
    • JOIN US TODAY
      • AS OUR SOFTWARE PUBLISHERS
      • AS OUR PROCUREMENT MANAGERS
      • AS OUR RESELLERS
    • CAREER WITH LOGON
    • CONTACT US
  • Solutions
    • SEARCH BY BRANDS
    • SEARCH BY CATEGORY
      • INFORMATION SECURITY SOLUTIONS
        • Vulnerability Management
        • Multifactor Authentication
        • Threat Intelligence
        • Network Management Solutions
        • Security Information and Event Management
        • Remote Access Software
        • Systems Administration Tools
        • Robotic Process Automation
        • Data Loss Prevention
        • Data / Password Recovery
        • Asset Management Solutions
        • Identity and Access Management
        • Antivirus
        • Activity Monitoring and Surveillance
        • Forensic Solutions
        • Content Disarm and Reconstruction
      • SOFTWARE DEVELOPMENT SOLUTIONS
        • Integrated Development Environments
        • Development Components
          • UI Components
          • Networking Components
          • Office Components
          • Barcode Components
          • Communication
        • Imaging Solutions
        • Software Localization
        • Release Automation & Management
        • eLearning Authoring Solutions
        • Charting Solutions
        • PDF Solutions
        • Reporting Solutions
        • Testing & QA
        • Text Retrieval/Enterprise Search
        • Database
  • Services
    • TRAINING SERVICES
    • IMPLEMENTATION SERVICES
    • AFTER-SALES SERVICES
    • BEST PRACTICES CONSULTING
  • What's New
    • EVENTS
    • LATEST UPDATES
    • SPECIAL OFFERS
  • Search HERE

Set your main menu in Appearance > Menus

Email Us Service Hotline: +852 25128491
Software Asia Limited
MENUMENU
  • About US
    • COMPANY OVERVIEW
    • JOIN US TODAY
      • AS OUR SOFTWARE PUBLISHERS
      • AS OUR PROCUREMENT MANAGERS
      • AS OUR RESELLERS
    • CAREER WITH LOGON
    • CONTACT US
  • Solutions
    • SEARCH BY BRANDS
    • SEARCH BY CATEGORY
      • INFORMATION SECURITY SOLUTIONS
        • Vulnerability Management
        • Multifactor Authentication
        • Threat Intelligence
        • Network Management Solutions
        • Security Information and Event Management
        • Remote Access Software
        • Systems Administration Tools
        • Robotic Process Automation
        • Data Loss Prevention
        • Data / Password Recovery
        • Asset Management Solutions
        • Identity and Access Management
        • Antivirus
        • Activity Monitoring and Surveillance
        • Forensic Solutions
        • Content Disarm and Reconstruction
      • SOFTWARE DEVELOPMENT SOLUTIONS
        • Integrated Development Environments
        • Development Components
          • UI Components
          • Networking Components
          • Office Components
          • Barcode Components
          • Communication
        • Imaging Solutions
        • Software Localization
        • Release Automation & Management
        • eLearning Authoring Solutions
        • Charting Solutions
        • PDF Solutions
        • Reporting Solutions
        • Testing & QA
        • Text Retrieval/Enterprise Search
        • Database
  • Services
    • TRAINING SERVICES
    • IMPLEMENTATION SERVICES
    • AFTER-SALES SERVICES
    • BEST PRACTICES CONSULTING
  • What's New
    • EVENTS
    • LATEST UPDATES
    • SPECIAL OFFERS
  • Search HERE
View large
jetbrains-update, news

JetBrains IntelliJ IDEA: Explore Your Program with Static Analysis

Posted on at by
jetbrains-1-logo-png-transparent

JetBrains IntelliJ IDEA

Explore your program with Statistic Analysis


This article was published by our partner JetBrains. To view the original article, please click here.

When writing code, we constantly receive assistance from static analysis. Invisible mechanisms work behind the scenes to provide us with all sorts of suggestions and warnings. It would not be an exaggeration to say that IntelliJ IDEA knows more about our code than we do.

Now what if we could access the static analysis data, either to examine how the program works or to debug complex issues? Actually, this feature already exists and has in fact been around for quite a while.

banner

It is called Dataflow to/from here, and it allows you to identify which values are possible at a given stage of data processing. This knowledge helps us detect potential runtime errors before they happen and optimize our code by removing redundant checks, conditions, and so on.

Consider the following example:

In the method printList, we have a null check to account for cases when null is passed as an argument. This protects us from a NullPointerException in the event that we try to print out the contents of the list when it is null.

 

a method parameter is checked for null

 

Let’s see how this feature can help us optimize this code.

Right-click the parameter, select Analyze | Data Flow to Here and specify the scope of the analysis. In the Analyze Dataflow tool window, click Group by Leaf Expression Nullness and open the respective tab.

The results of the analysis clearly show that no upstream code ever passes null as a parameter when calling this method. We see that because all calls fall under the NotNull Values node.

 

Group by nullness tab in Analyze Dataflow dialog

 

Thus we are safe to eliminate the redundant null check and annotate the parameter as @Notnull. Whenever you want to optimize your code but need more information to guide your decision about how to do so, data flow analysis is a tool that may save you a lot of time and help you avoid errors.

Using the same procedure, you can examine the entire range of input values. With this information available, you can prevent errors like unexpected ArrayIndexOutOfBoundsExceptions.

If an exception is thrown at runtime and you have a stack trace, identifying the cause becomes even easier. There is no need to look for the method that threw it and scrutinize the call tree. Instead, just click the frame where the exception was thrown.

 

Contact us to know more information on JetBrains IntelliJ IDEA and its other solutions.

Request Quote
Evaluation

LOGON is a pan-asian company operating in China, Hong Kong (HK), India, Singapore, Malaysia, Indonesia, Vietnam, Philippines and Thailand. LOGON has local dedicated trained product specialists in Hong Kong, Guangzhou, Kuala Lumpur, Mumbai and Bangalore. LOGON acts both as value added reseller and sole distributor for award winning software solutions. Customers can buy new licenses, purchase upgrades and renewals from any of our local offices. Contact us for first line support during evaluations, PoCs. We offer best practices consulting services and classroom & online training. Check our site for latest offers, special discounts, bundle deals, etc..

was last modified: December 16th, 2020 by
Share Post
Previous
Silobreaker | Using Unstructured Data to stay ahead of Emerging Threats
Next
Reflectiz | How to Keep Your e-Commerce Website Safe Before Cyber-Monday and Black-Friday

About Author

COMPANY

Company Overview
Career with LOGON
Contact Us

JOIN US TODAY

Resellers
Software Publishers
Procurement Managers

WE ARE AVAILABLE ON

SAP Ariba   coupa

gem

SERVICES

Training Services
Implemetation Services
After-sales Services
Best Practices Consulting

WHAT'S NEW

Events
Latest Updates
Special Offers

FOLLOW US ON

GET IN TOUCH

Phone:+852 25128491
Email: sales@logon-int.com

Legal   |   Privacy Policy

Important Links

  • Call me
  • Legal
  • Privacy Policy

Search engine

Use this form to find things you need on this site
Search

Results for {phrase} ({results_count} of {results_count_total})

Displaying {results_count} results of {results_count_total}

Dont see what you were looking for ? Retry the search with a different phrase ? If unsuccessful, please click here

Generic filters
Exact matches only
Search in title
Search in content
Search in excerpt
Newsletter
Contact Us Today
Book a Demo with us


Book a Demo with us


Free Website Risk Detection Request

Request a Demo !

Search

Results for {phrase} ({results_count} of {results_count_total})

Displaying {results_count} results of {results_count_total}

Dont see what you were looking for ? Retry the search with a different phrase ? If unsuccessful, please click here

Generic filters
Exact matches only
Search in title
Search in content
Search in excerpt
UserLock Video