java中不同类如何相互访问变量值(新手见解,可能很low)
最近在学基础java知识,这个是很常见的问题之一了,下面我要列出三种异类取值方法,当然不止这些,我选择了最简单的三种:
1.可以使用static静态变量,直接调用要访问类的属性和方法。因为
Java 中 static的特性:
- static 变量在类装载的时候进行初始化。
- 多个实例的 static变量会共享同一块内存区域。
1 public class A1 { 2 public static String str = "Hello World !"; 3 } 4 5 public class B2 { 6 public static void main(String[] args){ 7 System.out.println(A1.str); 8 } 9 }
2.可以把要访问的类在此类中实例化,通过new之后就可以调用实例化的属性和方法。
与第一种方法类似,但不需要给实例变量设置static属性,而是要求必须要实例化对象才能调用。
1 public class A1 { 2 public String str = "Hello World !"; 3 } 4 5 public class B2 { 6 public static void main(String[] args){ 7 A1 a = new A1(); 8 System.out.println(a.str); 9 } 10 }
3。第三种方法多了一步,在被取值的类中写出获值方法即可。
public class A1 { public String str = "Hello World !";
String getStr(){
return str;
} } public class B2 { public static void main(String[] args){ A1 a = new A1(); System.out.println(a.getStr()); } }