From 27c56aac50a3728e79d75d66ab3355e92094ed83 Mon Sep 17 00:00:00 2001 From: moshadab Date: Sat, 17 Sep 2022 14:16:41 +0530 Subject: [PATCH] Final var --- .../core/accessmodifiers/FinalVariable.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/com/shadab/java/core/accessmodifiers/FinalVariable.java diff --git a/src/com/shadab/java/core/accessmodifiers/FinalVariable.java b/src/com/shadab/java/core/accessmodifiers/FinalVariable.java new file mode 100644 index 0000000..c0aee80 --- /dev/null +++ b/src/com/shadab/java/core/accessmodifiers/FinalVariable.java @@ -0,0 +1,30 @@ +package com.shadab.java.core.accessmodifiers; + +public class FinalVariable { + + public static final int rank =20; + public static final Data data =new Data(); + +} + +class FinalTest{ + + public static void main(String[] args) { + FinalVariable finalVariable = new FinalVariable(); + // finalVariable.rank=30; //--> The final field FinalVariable.rank cannot be assigned + System.out.println(finalVariable.rank); + //FinalVariable.data= new Data(); //--> Final variable cant be rebound to another refrence + System.out.println("id:"+FinalVariable.data.id+"name:"+FinalVariable.data.name); + Data data =FinalVariable.data; + // but internal of the object refenrenced by final variable can be modified + data.id=23; + data.name="Rohan"; + System.out.println("id:"+FinalVariable.data.id+"name:"+FinalVariable.data.name); + } + +} + +class Data{ + int id ; + String name; +}