How do java public / private and static modifiers affect multiple variables declared on one line?
•
Java
Are the following equivalent?
private static boolean readAllFiles = false,readAllDirs = false; private static boolean readAllFiles = false; private static boolean readAllDirs = false;
If so, do they still have the same modifiers with different values?
private static boolean readAllFiles = false,readAllDirs = true;
Solution
Yes, they are equivalent regardless of their initial values
Here are some test code to demonstrate:
public class TestClass { private static boolean readAllFiles = false,readAllDirs = true; public static void main(String[] args) { //these two would result in COMPILE error if both vars were not static System.out.println("readAllFiles: " + readAllFiles); System.out.println("readAllDirs: " + readAllDirs); } }
public final class TestClass2 { public static void main(String[] args) { //these two DO result in COMPILE error,because both vars are private System.out.println("TestClass.readAllFiles: " + TestClass.readAllFiles); System.out.println("TestClass.readAllDirs: " + TestClass.readAllDirs); } }
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码