Neurlal Networks in Java! Thats not something very common right? You can go through this code to understand how can we use the power of Object Oriented Analysis and Design in making systems as complicated as a neural network. The usual method of executing neural networks is by using matrices to speeden up the calculations. Matrix multiplication is done and the corresponding result is the updated weights and neurons. But the aproach used here is very different. In this approach, every entity is treated as a seperate class of its own and objects are made of these clases. For example here a neuron is a class and each and neuron in the network is an object of the class. Although this approach might not be efficiant for training large scale networks, it is an excellent use case for the practise of Object Oriented Programming Methodology.