JAVA类变量及类方法代码实例详解

所属分类: 软件编程 / java 阅读数: 41
收藏 0 赞 0 分享

这篇文章主要介绍了JAVA类变量及类方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

类变量(static)

类变量是该类的所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量。

public class C {
  public static void main(String[] args){

    Child ch1 = new Child(12,"小小");
    ch1.joinGame();
    Child ch2 = new Child(13,"小红");
    ch2.joinGame();
    //调用类变量
    System.out.println("一共有" + Child.total+ "小朋友");
  }
}

class Child{
  public int age;
  public String name;

  //total是静态变量,因此他可以被任何类调用
  public static int total = 0;

  public Child(int age, String name)
  {
    this.age = age;
    this.name = name;
  }

  public void joinGame()
  {
    total++;
    System.out.println("有一个小朋友加进来!");
  }
}

运行结果

静态区块

只要程序启动就会被执行一次,也仅执行一次

public class C {

  static int i = 1;
  static
  {
    System.out.println("静态区域块被执行一次");
    //该静态区域块,只被执行一次,也不会因创建对象而触发
    i++;
  }
  public C()
  {
    System.out.println("构造函数域块被执行一次");
    i++;
  }

  public static void main(String[] args){

    C t1 = new C();
    System.out.println("输出第一个i的值为:" + C.i);
    C t2 = new C();
    System.out.println("输出第二个i的值为:" + C.i);
  }
}

运行结果

类方法

类方法中不能访问非静态变量

public class C {
  public static void main(String[] args){
    Student stu1 = new Student(18,"小红",580);
    Student stu2 = new Student(18,"小黑",620);
    System.out.println("有" + Student.p_total + "个学生");
    System.out.println("学费总收入:" + Student.get_total_fee());
  }
}

//定义一个学生类
class Student{
  public int age;
  public String name;
  public double fee; //学费
  public static int p_total = 0;
  public static double total_fee; //总学费

  public Student(int age, String name, double fee)
  {
    p_total++;
    this.age = age;
    this.name = name;
    this.total_fee += fee;
  }

  //静态方法
  //Java中规则:类变量原则上用类方法去访问
  public static double get_total_fee()
  {
    return total_fee;
  }
}

运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

SpringBoot中使用Ehcache的详细教程

EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点,是 Hibernate 中默认的 CacheProvider。这篇文章主要介绍了SpringBoot中使用Ehcache的相关知识,需要的朋友可以参考下
收藏 0 赞 0 分享

在idea 中添加和删除模块Module操作

这篇文章主要介绍了在idea 中添加和删除模块Module操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

java spring整合junit操作(有详细的分析过程)

这篇文章主要介绍了java spring整合junit操作(有详细的分析过程),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解JAVA 弱引用

这篇文章主要介绍了 JAVA 弱引用的相关资料,帮助大家更好的理解和学习java引用对象,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

深入了解JAVA 虚引用

这篇文章主要介绍了JAVA 虚引用的相关资料,帮助大家更好的理解和学习JAVA,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

详解JAVA 强引用

这篇文章主要介绍了JAVA 强引用的相关资料,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

java中的按位与(&)用法说明

这篇文章主要介绍了java中的按位与(&)用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

深入了解JAVA 软引用

这篇文章主要介绍了JAVA 软引用的相关资料,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

利用MyBatis实现条件查询的方法汇总

这篇文章主要给大家介绍了关于利用MyBatis实现条件查询的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MyBatis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

Intellij IDEA 与maven 版本不符 Unable to import maven project See logs for details: No implementation for org.apache.maven.model.path.PathTranslator was bound

这篇文章主要介绍了Intellij IDEA 与maven 版本不符 Unable to import maven project See logs for details: No implementation for org.apache.maven.model.path.Pa
收藏 0 赞 0 分享
查看更多