/*
静态:static
静态方法只能访问静态成员 非静态成员可以访问静态成员
静态变量什么时候使用
出现对象共享的数据的时候 使用静态变量(类变量)
对象中的特有数据 要定义成非静态存储于堆内存中.
静态函数什么时候使用
当功能内部没有访问到非静态数据的时候(对象特有数据)
该功能定义成静态
*/
class Demo_72static02{
public static void main(String[] args) {
int[] arr=new int[]{3,4,5,5};
System.out.println(arr);
PersonDemo p=new PersonDemo("张san",23);
//System.out.println(p.country);
//System.out.println(PersonDemo.country);
p.set(); //下面的静态方法调用和对象调用有很明显的区别
Demo.shou(); //当想使用静态中的方法的时候 直接用类名和方法名调用就可以实现
}
}
class Demo{
String name;
public static void shou(){
//System.out.println(name+"nihao"); //当函数调用name非静态变量的时候 不能定义为static静态函数
System.out.println("ni-------hao"); //当没有调用非静态变量name的时候 在内存中存储一份于共享区就足够了
}
}
class PersonDemo{
private static int age;
private String name;
static String country="cn";
public static void set(){
System.out.println(age);
}
PersonDemo(){
//this.(name);
}
PersonDemo(String name){
this.name="hassssha";
System.out.println("----------");
System.out.println(this.name);
//this();
}
PersonDemo(String name,int age){
this(name);
}
}
|
|