服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java超详细讲解类变量和类方法

Java超详细讲解类变量和类方法

2022-12-16 16:50Demo龙 Java教程

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

1.static静态变量

1.静态变量被同一个类的所有对象共享

2.static类变量在类加载的时候就生成使用

static保存在class实例的尾部,在堆中

3.和C语言C++有点像

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package com.demo.static_;
import java.sql.SQLOutput;
public class childgeme {
    public static void main(String[] args) {
        Child ch01=new Child("牛牛牛");
        ch01.join();
        ch01.count++;
        Child ch02=new Child("马马马");
        ch02.join();
        ch02.count++;
        Child ch03=new Child("猪猪猪");
        ch03.join();
        ch03.count++;
        System.out.println("共有"+Child.count+"个小孩加入了游戏");
        System.out.println("ch01.count="+ch01.count);
        System.out.println("ch02.count="+ch02.count);
        System.out.println("ch03.count="+ch03.count);
    }
}
class Child{
    private String name;
    //定义一个变量count,是一个类变量(静态变量)
    public static int count=0;
    public Child(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public static int getCount() {
        return count;
    }
    public static void setCount(int count) {
        Child.count = count;
    }
    public void join(){
        System.out.println(this.name+"加入了游戏");
    }
}

Java超详细讲解类变量和类方法

2.类变量(静态变量的访问)

静态变量的访问权限和范围和普通属性是一样的

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package com.demo.static_;
import java.sql.SQLOutput;
public class visit_Static {
    public static void main(String[] args) {
        //1.类名.类变量名
        //static类变量在类加载的时候就生成使用
        System.out.println("A.name="+A.name);
        System.out.println("A.getAge()="+A.getAge());
        //2.类对象.类变量名
        A a=new A();
        System.out.println("a.name="+a.name);
        System.out.println("a.getAge()="+a.getAge());
    }
}
class A{
    //类变量
    public static String name="Demo龙";
    private static int age=99;
    public static int getAge() {
        return age;
    }
    public static void setAge(int age) {
        A.age = age;
    }
}

Java超详细讲解类变量和类方法

若类变量是private,则主函数中无法访问,需借助类函数访问

3.类方法

1.类方法也叫静态方法

2.访问修饰符+static+数据返回类型(){}

3.static+访问修饰符+数据返回类型(){}

4.调用方法和类方法相同

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package com.demo.static_;
public class static_method {
    public static void main(String[] args) {
        stu a01=new stu("小虎");
        //stu.sumfee();
        a01.sumfee(150);
        stu a02=new stu("小龙");
        a02.sumfee(250);
        //stu.sumfee();
        stu a03=new stu("小猪");
        stu.sumfee(199);
        //输出当前收到的总学费
        stu.showfee();
    }
}
class stu{
    private String name;//普通成员
    //定义一个静态变量来累计学生的学费
    private static double fee=0;
    public stu(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    //当方法使用了static修饰后,该方法就是静态方法
    //静态方法就可以访问静态变量
    public static double getFee() {
        return fee;
    }
    public static void setFee(double fee) {
        stu.fee = fee;
    }
    public static void sumfee(double fee){
        stu.fee+=fee;
    }
    public static void showfee(){
        System.out.println("总学费="+stu.fee);
    }
}

Java超详细讲解类变量和类方法

detail

1.静态方法只能访问静态成员,this/super都不允许在类方法使用

2.非静态方法,可以访问静态成员和非静态成员

3.都遵守访问权限

到此这篇关于Java超详细讲解类变量和类方法的文章就介绍到这了,更多相关Java变量与方法内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://zal321.blog.csdn.net/article/details/124799200

延伸 · 阅读

精彩推荐