Skip to main content

Overriding hashcode() method in Java and why always override hashcode() if overriding equals()?

Any class in java extend Object class by default. Object class has some non final methods: hashCode(), equals(), toString(), clone() and finalize(). Today we will discuss about hashCode() and equals() method.
  • You you want to use your object in a HashMap, Hashtable,… you need to override hashCode(). “hashCode()” method is supposed to return an int  that should uniquely identify different objects. The default hashCode() return machine address. When we use your object as a key in HashMap/Hashtable, then hashCode of this key will decide where corresponding value is stored in Hash. So if we override hashCode method, then performance of get value from Hash will be increased.

  • If you implemented equals() method, then you have to implement hashCode() method because of simple reason that there’s a consistent with equality: if x.equals(y), then x.hasCode() must == y.hashCode(). 

Comments

Popular posts from this blog

How to Install SQL Server on MacOS with docker

 I'm writing a small tut for who need to install SQL Server on macOS using docker Step 1: Download the SQL Server Image sudo docker pull mcr.microsoft.com/mssql/server:2019-latest Step 2: Launch the SQL Server Image in Docker docker run -d --name example_sql_server -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Pass.word-123' -p 1433:1433 mcr.microsoft.com/mssql/server:2019-latest Step 3: Check the SQL Server Docker Container docker ps -a Step 4: Install SQL Server Command-Line Tool sudo npm install -g sql-cli Step 5: Connect to SQL Server  5.1 Using Command mssql -u sa -p Pass.word-123 5.2: Using VSCode to connect to sql server Using the extension SQL Server (mssql)

What is API Gateway?

  What does API gateway do? The diagram below shows the detail. Step 1 - The client sends an HTTP request to the API gateway. Step 2 - The API gateway parses and validates the attributes in the HTTP request. Step 3 - The API gateway performs allow-list/deny-list checks. Step 4 - The API gateway talks to an identity provider for authentication and authorization. Step 5 - The rate limiting rules are applied to the request. If it is over the limit, the request is rejected. Steps 6 and 7 - Now that the request has passed basic checks, the API gateway finds the relevant service to route to by path matching. Step 8 - The API gateway transforms the request into the appropriate protocol and sends it to backend microservices. Steps 9-12 : The API gateway can handle errors properly, and deals with faults if the error takes a longer time to recover (circuit break). It can also leverage ELK (Elastic-Logstash-Kibana) stack for logging and monitoring. We sometimes cache data in the API gatew...