zoukankan      html  css  js  c++  java
  • 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,可以发现,两个实例对象共享一个静态变量的值。前面两个打印语句是实例对象调用实例方法,第三个打印语句是类调用静态变量。

  • 相关阅读:
    IndexDB
    实现es6中的set和map
    视口viewport
    nginx入门
    http协议
    图像格式
    promise
    js中this指向
    CSS 7阶层叠水平
    C# 一个方法如何返回多个值
  • 原文地址:https://www.cnblogs.com/jshtest/p/9150302.html
Copyright © 2011-2022 走看看