Daisy Rees

Daisy Rees


Getting Started with Methods in Java

1. Introduction

In Java, methods are where we define the business logic of an application. They define the interactions among the data enclosed in an object.

In this tutorial, we’ll go through the syntax of Java methods, the definition of the method signature, and how to call and overload methods.

2. Method Syntax

First, a method consists of six parts:

  • Access modifier: optionally we can specify from wherein the code one can access the method
  • Return type: the type of the value returned by the method, if any
  • Method identifier: the name we give to the method
  • Parameter list: an optional comma-separated list of inputs for the method
  • Exception list: an optional list of exceptions the method can throw
  • Body: definition of the logic (can be empty)

Let’s see an example:

Getting Started with Methods in Java

Let’s take a closer look at each of these six parts of a Java method.

2.1. Access Modifier

The access modifier allows us to specify which objects can have access to the method. There are four possible access modifiers: public, protected, private, and default (also called package-private).

A method can also include the static keyword before or after the access modifier. This means that the method belongs to the class and not to the instances, and therefore, we can call the method without creating an instance of the class. Methods without the static keyword are known as instance methods and may only be invoked on an instance of the class.

Regarding performance, a static method will be loaded into memory just once – during class loading – and are thus more memory-efficient.

2.2. Return Type

Methods can return data to the code where they have been called from. A method can return a primitive value or an object reference, or it can return nothing if we use the void keyword as the return type.

Let’s see an example of a _void _method:

public void printFullName(String firstName, String lastName) {
    System.out.println(firstName + " " + lastName);

If we declare a return type, then we have to specify a return statement in the method body. Once the return statement has been executed, the execution of the method body will be finished and if there are more statements, these won’t be processed.

On the other hand, a void method doesn’t return any value and, thus, does not have a return statement.

2.3. Method Identifier

The method identifier is the name we assign to a method specification. It is a good practice to use an informative and descriptive name. It’s worth mentioning that a method identifier can have at most 65536 characters (a long name though).

2.4. Parameter List

We can specify input values for a method in its parameter list, which is enclosed in parentheses. A method can have anywhere from 0 to 255 parameters that are delimited by commas. A parameter can be an object, a primitive or an enumeration.

2.5. Exception List

We can specify which exceptions are thrown by a method by using the throws clause. In the case of a checked exception, either we must enclose the code in a try-catch clause or we must provide a throws clause in the method signature.

So, let’s take a look at a more complex variant of our previous method, which throws a checked exception:

public void writeName(String name) throws IOException {
    PrintWriter out = new PrintWriter(new FileWriter("OutFile.txt"));
    out.println("Name: " + name);

2.6. Method Body

The last part of a Java method is the method body, which contains the logic we want to execute. In the method body, we can write as many lines of code as we want — or none at all in the case of static methods. If our method declares a return type, then the method body must contain a return statement.

3. Method Signature

As per its definition, a method signature is comprised of only two components — the method’s name and parameter list.

So, let’s write a simple method:

public String getName(String firstName, String lastName) {
  return firstName + " " + middleName + " " + lastName;

The signature of this method is getName(String firstName, String lastName).

The method identifier can be any identifier. However, if we follow common Java coding conventions, the method identifier should be a verb in lowercase that can be followed by adjectives and/or nouns.

4. Calling a Method

Now, let’s explore how to call a method in Java. Following the previous example, let’s suppose that those methods are enclosed in a Java class called PersonName:

public class PersonName {
  public String getName(String firstName, String lastName) {
    return firstName + " " + middleName + " " + lastName;

Since our getName method is an instance method and not a static method, in order to call the method getName, we need to create an instance of the class PersonName:

PersonName personName = new PersonName();
String fullName = personName.getName("Alan", "Turing");

As we can see, we use the created object to call the getName method.

Finally, let’s take a look at how to call a static method. In the case of a static method, we don’t need a class instance to make the call. Instead, we invoke the method with its name prefixed by the class name.

Let’s demonstrate using a variant of the previous example:

public class PersonName {
  public static String getName(String firstName, String lastName) {
    return firstName + " " + middleName + " " + lastName;

In this case, the method call is:

String fullName = PersonName.getName("Alan", "Turing");

5. Method Overloading

Java allows us to have two or more methods with the same identifier but different parameter list — different method signatures. In this case, we say that the method is overloaded. Let’s go with an example:

public String getName(String firstName, String lastName) {
  return getName(firstName, "", lastName);
public String getName(String firstName, String middleName, String lastName) {
  if (!middleName.isEqualsTo("")) {
    return firstName + " " + lastName;
  return firstName + " " + middleName + " " + lastName;

Method overloading is useful for cases like the one in the example, where we can have a method implementing a simplified version of the same functionality.

Finally, a good design habit is to ensure that overloaded methods behave in a similar manner. Otherwise, the code will be confusing if a method with the same identifier behaves in a different way.

6. Conclusion

In this tutorial, we’ve explored the parts of Java syntax involved when specifying a method in Java.

In particular, we went through the access modifier, the return type, the method identifier, the parameter list, exception list, and method body. Then we saw the definition of method signature, how to call a method, and how to overload a method.

As usual, the code seen here is available over on GitHub.


What is GEEK

Buddha Community

Getting Started with Methods in Java
Tyrique  Littel

Tyrique Littel


How to Install OpenJDK 11 on CentOS 8

What is OpenJDK?

OpenJDk or Open Java Development Kit is a free, open-source framework of the Java Platform, Standard Edition (or Java SE). It contains the virtual machine, the Java Class Library, and the Java compiler. The difference between the Oracle OpenJDK and Oracle JDK is that OpenJDK is a source code reference point for the open-source model. Simultaneously, the Oracle JDK is a continuation or advanced model of the OpenJDK, which is not open source and requires a license to use.

In this article, we will be installing OpenJDK on Centos 8.

#tutorials #alternatives #centos #centos 8 #configuration #dnf #frameworks #java #java development kit #java ee #java environment variables #java framework #java jdk #java jre #java platform #java sdk #java se #jdk #jre #open java development kit #open source #openjdk #openjdk 11 #openjdk 8 #openjdk runtime environment

Samanta  Moore

Samanta Moore


Going Beyond Java 8: Local Variable Type Inference (var) - DZone Java

According to some surveys, such as JetBrains’s great survey, Java 8 is currently the most used version of Java, despite being a 2014 release.

What you are reading is one in a series of articles titled ‘Going beyond Java 8,’ inspired by the contents of my book, Java for Aliens. These articles will guide you step-by-step through the most important features introduced to the language, starting from version 9. The aim is to make you aware of how important it is to move forward from Java 8, explaining the enormous advantages that the latest versions of the language offer.

In this article, we will talk about the most important new feature introduced with Java 10. Officially called local variable type inference, this feature is better known as the **introduction of the word **var. Despite the complicated name, it is actually quite a simple feature to use. However, some observations need to be made before we can see the impact that the introduction of the word var has on other pre-existing characteristics.

#java #java 11 #java 10 #java 12 #var #java 14 #java 13 #java 15 #verbosity

Samanta  Moore

Samanta Moore


Spring Boot and Java 16 Records

In this article, we will discuss Java 16’s newest feature, Records. Then we will apply this knowledge and use it in conjunction with a Spring Boot application.

On March 16th, 2021, Java 16 was GA. With this new release, tons of new exciting features have been added. Check out the release notes to know more about these changes in detail. This article’s focus will be on Java Records, which got delivered with JEP 395. Records were first introduced in JDK 14 as a preview feature proposed by JEP 359, and with JDK 15, they remained in preview with JEP 384. However, with JDK 16, Records are no longer in preview.

I have picked Records because they are definitely the most favored feature added in Java 16, according to this Twitter poll by Java Champion Mala Gupta.

I also conducted a similar survey, but it was focused on features from Java 8 onwards. The results were not unexpected, as Java 8 is still widely used. Very unfortunate, though, as tons of new features and improvements are added to newer Java versions. But in terms of features, Java 8 was definitely a game-changer from a developer perspective.

So let’s discuss what the fuss is about Java Records.

#java #springboot #java programming #records #java tutorials #java programmer #java records #java 16

Seamus  Quitzon

Seamus Quitzon


Learning by Doing: How to Learn Java Basics by Building Your Own Project

Java is not the hardest language to start with. So, it becomes way popular among novice developers joining the ranks of Java coders every single day. If you are reading this blog post, you might be interested in learning Java.

Java is widely used across industry, and especially in the area of Enterprise software, which results in many high paying job opportunities and makes this programming language a common language for newbies. A general promotion of it within colleges and other institutions providing a formal Computer Science education also contributes to its popularity.

However, these are not the only advantages of Java — among other things, it allows you to adopt good practices and makes it way easier to learn other languages in the future. And with no doubt, you can easily learn it if you’re following the right approach. In this post, I am going to share some of them with you.

The Importance of Practice in Programming

Beyond all doubt, practice is important and valuable. But, before we get to the advantages of hands-on experience, I want to draw your attention to one essential thing I often tell my students.

New programmers who are just learning and start implementing things, without being supervised, often end up adapting bad practices. To avoid that, especially when you are making your first steps in programming, I recommend looking for a person who will supervise you and teach you. A strong mentorship with someone engaged in a serious project, as well as communication within the community in the form of sharing code and asking for feedback, is worth the effort. Similarly, when you are applying for your first job, you want to be looking for a company with a strong team and a good leader who would be keen on investing into your learning.

Now, let’s return to practical experience. Learning by doing is different from learning by passively consuming the information. To make sure we can use all the newly acquired technology, we should put our skills to test and write tons of code. The benefits of hands-on experience are almost endless.

Efficiency and Productivity

By practicing, you get a clear understanding of what programming is. Consequently, you start doing better with each new hands-on task, complete it faster, and thus become more productive.

Even if you are not working on real-world projects yet, it’s important to get used to having deadlines. They are inextricably linked to the programming process. My recommendation is to set up your own deadlines while practicing stage and follow them as closely as possible.

#java #learn java #java code #learn java in easy way #learn java course #learn java development

Samanta  Moore

Samanta Moore


Lambda Expression in Java 8

In this blog we will understand what is the lambda expression and why we need lambda expression and how we use lambda and about the functional interface.

What is Lambda Expression :
  • It is an anonymous function.
  • Not having name
  • No return type and no modifiers.

#functional programming #java #functional java #java #java 8 #java8 #lambda expressions in java