$show=/label

Static in Java - Variables, Methods, Class and Static blocks

SHARE:

Learn Static in Java. How Static keyword is used on Variables, Methods, Class and Static blocks. Example program on each type. Differences between static and non-static Variables and methods.

Static in Java - Variables, Methods, Class and Static blocks


Static is a keyword is applied to the following in Java.

1) Variable
2) Method
3) Class
4) Static blocks

Static Variables :



Static variables have special feature in Java as this initialized and executed only once before class instantiated. Static variables are comes under class level and no need to create the object to invoke static variables. Directly can be accessed by its class name. This is being shared by all objects created by its class.
Refer below Example program covered all scenarios for Static Variable:

Example 1:

package istav;
class StaticClass{
public static String name;

public static String getName() {
return name;
}

public static void setName(String name) {
StaticClass.name = name;
}
}

public class StaticEx {

public static void main(String[] args) {

StaticClass class1 = new  StaticClass();
class1.setName("Static name 1");

StaticClass class2 = new  StaticClass();
class2.setName("Static name 2");

System.out.println("class1 :: "+class1.getName());
System.out.println("class2 :: "+class2.getName());

StaticClass.name = "Static Name 3";
StaticClass.name = "Static Name 4";

System.out.println(StaticClass.name);
}
}

Output :

class1 :: Static name 2
class2 :: Static name 2
Static Name 4


Static Methods :

Static methods are similar to the static variables as to access static methods, no need of object to be invoked.


Example :



package w3schools.statics;

class StaticMethod{

public  static void display(String method)
{
System.out.println("static method :: "+method);
}
}

public class StaticMethods {

public static void main(String[] args) {

StaticMethod.display("One");

}

}


Output :

static method :: One


Static Class :


Static class can be applied to only Inner classes. In inner nested static class can acess only outer class static variable and static methods. Nested static inner class can not access any non static variable and methods.


Static class Example 1 :



package w3schools.statics;

class Outer{

static String name = "java";

static class Inner{

public void display()
{
System.out.println("nested Inner Static Class Method");
displayOuter();
}
}

public static void displayOuter(){
System.out.println("Outer display method");
}

}

public class StaticClassEx {

public static void main(String[] args) {


Outer.Inner inner = new Outer.Inner();

inner.display();
}

}



Output :

nested Inner Static Class Method
Outer display method

Static class Example 2: 



package w3schools.statics;

class Outer{

static String name = "java";

static class Inner{

public static void display()
{
System.out.println("nested Inner Static Class Method");
displayOuter();
}
}

public static void displayOuter(){
System.out.println("Outer display method");
}

}

public class StaticClassEx {

public static void main(String[] args) {

Outer.Inner.display();
}

}

Output :

nested Inner Static Class Method
Outer display method


Static Blocks:

Static blocks will be executed before main method executes and load the class onto JVM.

Example 1:


package w3schools.statics;

public class StaticBlocksEx {

public static void main(String[] args) {

System.out.println("Main method Starts");

System.out.println("Main method Ends");

}

static{
System.out.println("StaticBlocksEx static block");
}

}


Output :

StaticBlocksEx static block
Main method Starts
Main method Ends

Example 2:



package w3schools.statics;

class A{

static{
System.out.println("Static A block");
}
}

class B extends A{

static{
System.out.println("Static B block");
}
}

public class StaticBlocksEx extends B{

public static void main(String[] args) {

System.out.println("Main method Starts");

// A a = new B();
StaticBlocksEx blocksEx = new StaticBlocksEx();

System.out.println("Main method Ends");

}

static{
System.out.println("StaticBlocksEx static block");
}

}


Output :

Static A block
Static B block
StaticBlocksEx static block
Main method Starts
Main method Ends

If we create the object to subclass than first will looks for static methods in the super classes and proceeding by subclasses.

COMMENTS

BLOGGER: 1
Please do not add any spam links in the comments section.

About Us

Author: Venkatesh - I love to learn and share the technical stuff.
Name

accumulo,1,ActiveMQ,2,Adsense,1,API,37,ArrayList,18,Arrays,24,Bean Creation,3,Bean Scopes,1,BiConsumer,1,Blogger Tips,1,Books,1,C Programming,1,Collection,8,Collections,37,Collector,1,Command Line,1,Comparator,1,Compile Errors,1,Configurations,7,Constants,1,Control Statements,8,Conversions,6,Core Java,149,Corona India,1,Create,2,CSS,1,Date,3,Date Time API,38,Dictionary,1,Difference,2,Download,1,Eclipse,3,Efficiently,1,Error,1,Errors,1,Exceptions,8,Fast,1,Files,17,Float,1,Font,1,Form,1,Freshers,1,Function,3,Functional Interface,2,Garbage Collector,1,Generics,4,Git,9,Grant,1,Grep,1,HashMap,2,HomeBrew,2,HTML,2,HttpClient,2,Immutable,1,Installation,1,Interview Questions,6,Iterate,2,Jackson API,3,Java,32,Java 10,1,Java 11,6,Java 12,5,Java 13,2,Java 14,2,Java 8,128,Java 8 Difference,2,Java 8 Stream Conversions,4,java 8 Stream Examples,12,Java 9,1,Java Conversions,14,Java Design Patterns,1,Java Files,1,Java Program,3,Java Programs,114,Java Spark,1,java.lang,4,java.util. function,1,JavaScript,1,jQuery,1,Kotlin,11,Kotlin Conversions,6,Kotlin Programs,10,Lambda,2,lang,29,Leap Year,1,live updates,1,LocalDate,1,Logging,1,Mac OS,3,Math,1,Matrix,6,Maven,1,Method References,1,Mockito,1,MongoDB,3,New Features,1,Operations,1,Optional,6,Oracle,5,Oracle 18C,1,Partition,1,Patterns,1,Programs,1,Property,1,Python,2,Quarkus,1,Read,1,Real Time,1,Recursion,2,Remove,2,Rest API,1,Schedules,1,Serialization,1,Servlet,2,Sort,1,Sorting Techniques,8,Spring,2,Spring Boot,23,Spring Email,1,Spring MVC,1,Streams,31,String,61,String Programs,28,String Revese,1,StringBuilder,1,Swing,1,System,1,Tags,1,Threads,11,Tomcat,1,Tomcat 8,1,Troubleshoot,26,Unix,3,Updates,3,util,5,While Loop,1,
ltr
item
JavaProgramTo.com: Static in Java - Variables, Methods, Class and Static blocks
Static in Java - Variables, Methods, Class and Static blocks
Learn Static in Java. How Static keyword is used on Variables, Methods, Class and Static blocks. Example program on each type. Differences between static and non-static Variables and methods.
JavaProgramTo.com
https://www.javaprogramto.com/2013/08/static-in-java.html
https://www.javaprogramto.com/
https://www.javaprogramto.com/
https://www.javaprogramto.com/2013/08/static-in-java.html
true
3124782013468838591
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content