In addition, I have attempted in this article to show how the basic principles apply in particular to the Java programming language. Cohesion Methods do things. On a low level, they do things such as accept data as input, operate on that data, and deliver data as output. Coupling looks at how the inputs and outputs of a method connect it to other parts of the program. By contrast, maximizing cohesion requires that you look at methods on a high level.
Cohesion looks at the degree to which a method accomplishes one conceptual task.
The more a method is focused on accomplishing a single conceptual task, the more cohesive that method is. Cohesive methods help make your code more flexible because changes are easier to make when you can draw upon a set of methods, each of which performs a single conceptual task. Cohesive methods increase the odds that when you need to change a class's behavior at some point in the future, you'll be able to do so by writing code that invokes existing methods in a new way. In addition, changes to an existing behavior are more isolated if that behavior is encased in its own method. Yes, it is a useful method.