Skip to main content

[Java] Creating Immutable Class

what is immutable class. A class whose object can not be modified.

So we have to make sure we have stop all the mechanism which allows user to change the stage.

* Member Variable - Make them final so no one can change state.
* Class as Final - So derived class can not override the behavior.
* No Setter method - So its can not be changed later in case you missed to  initialize in constructor.


public Final class DataReceiver
{
final string port_id;
public DataReceiver( String port)
this.port_id = port;
}

public String getPortID()
{
return port_number;
}
}

Above class will be used as immutable now. :)

Comments

Popular posts from this blog

Car Parking Problem

There is n parking slots and n-1 car already parked. Lets say car parked with initial arrangement and we want to make the car to be parked to some other arrangement. Lets say n = 5, inital = free, 3, 4, 1, 2 desired = 1, free, 2, 4 ,3 Give an algorithm with minimum steps needed to get desired arrangement. Told by one of my friend and after a lot of search i really got a nice solution. I will post solution in comment part

JDBC connection factory

  Class ConnectionManager {   Queue<Connection> availableConnection;   List <Connection> allotedConnection; ConnectionManager( Integer noOfConnections, ConnectionPoperties props ) {     //Create the no of connection objects and assign to avaialbleConnection } Conection getConnection() {     syncronized( this.class) { if (availableConnection.isEmpty() ) {          throw ConnectionExhausted();       }       conn = availableCOnnection.poll();       alottledConectiion.add(conn); } return conn; } synchronized Conection releaseConnection(Connection conn) {        alottedconnection.remove(conn);    avaialbleConection.add(conn); }

Median of Five Numbers

U have 5 NOs , X1,X2,X3,X4,X5 With minimum no. of comparisons we have to find a median. SWAP(X,Y) function is available to u . I have a answer of six comparisons and eight swaps....wait for people to find out by themselves.