• java基础知识之七: static关键字


    本文来介绍static关键字,在Java中用static关键字的方法,就叫静态方法,静态方法只能被类本身调用,不能被类的实例对象调用(会出现警告,类型不匹配),而没有static关键字的方法,在类中叫实例方法,任何一个实例对象都能调用实例方法。同样,类变量(静态变量)也和方法类似。

    这篇我们再介绍一个static使用的例子。需要两个文件,一个Student.java,一个MyClass.java

    1. Student.java的代码如下

        package Lessons;  
          
        public class Student {  
              
            String name;  
            int age;  
            static int NoOfStudents = 0;  
              
            Student(){  
                NoOfStudents++;  
            }  
              
            public int getNoOfStudents(){  
                return NoOfStudents;  
            }  
            public String getName() {  
                return name;  
            }  
            public void setName(String name) {  
                this.name = name;  
            }  
            public int getAge() {  
                return age;  
            }  
            public void setAge(int age) {  
                this.age = age;  
            }  
              
          
        } 

      上面写了三个成员变量,一个静态变量,两个普通成员变量。还写了一个构造函数,构造函数内部,使得学生学号这个变量自动加1,如果被调用一次。还写了一个实例方法,用来获取学号的最新值。
    2. MyClass.java的相关代码:

    [java] view plain copy

        package Lessons;  
          
          
        public class MyClass {  
          
            public static void main(String[] args) {  
                  
                Student Anthony = new Student();  
                System.out.println(Anthony.getNoOfStudents());  
                  
                Student Tom = new Student();  
                System.out.println(Tom.getNoOfStudents());  
                  
                System.out.println(Student.NoOfStudents);  
                  
            }  
          
        } 

    测试显示 1,2, 2,可以发现,两个实例对象共享一个静态变量的值。前面两个打印语句是实例对象调用实例方法,第三个打印语句是类调用静态变量。

  • 相关阅读:
    写一个列表生成式,产生一个公差为11的等差数列
    如果对方网站反爬取,封IP了怎么办?
    为什么会选择redis数据库?
    你是否了解谷歌的无头浏览器?
    遇到的反爬虫策略以及解决方法?
    常见的HTTP方法有哪些?
    遇到反爬机制怎么处理?
    列举网络爬虫所用到的网络数据包,解析包?
    python中的关键字yield有什么作用?
    如下代码输出的是什么?
  • 原文地址:https://www.cnblogs.com/jshtest/p/9150302.html
Copyright © 2020-2023  润新知