zoukankan      html  css  js  c++  java
  • JavaSE 基础 第28节 static 关键字

    2016-06-29

    1 静态变量

    静态变量是属于类的,和对象没有关系。
    非静态变量是属于某个对象的,每个对象都有该数据的副本,而静态变量只有一个。

    package com.java1995;
    
    public class StaticTest {
        
        int commonint=0;//普通变量
        static int staticint=0;//静态变量
        
        StaticTest(int x){
            this.commonint=x;
        }
        
        public static void main(String[] args) {
            StaticTest s1=new StaticTest(1);
            StaticTest s2=new StaticTest(2);
            
            System.out.println("s1.commint="+s1.commonint);
            System.out.println("s2.commint="+s2.commonint);
            
            s1.staticint=1;
            System.out.println("s1为staticint赋值为1");
            System.out.println("s1.staticint="+s1.staticint);
            System.out.println("s2.staticint="+s2.staticint);
            System.out.println("s2为staticint赋值为15");
            s2.staticint=15;
            System.out.println("s1.staticint="+s1.staticint);
            System.out.println("s2.staticint="+s2.staticint);
        }
    
    }

    package com.java1995;
    
    public class Student {
        
        int id=0;
        static int num=0;//静态变量
        
        Student(int id){
            this.id=id;
            num++;
        }
        
        public static void main(String[] args) {
            Student s1=new Student(100);
            Student s2=new Student(101);
            Student s3=new Student(102);
            Student s4=new Student(103);
            
            System.out.println("s1的学号 :"+s1.id);
            System.out.println("s2的学号 :"+s2.id);
            System.out.println("s3的学号 :"+s3.id);
            System.out.println("s4的学号 :"+s4.id);
            
            System.out.println("学生的数目为 :"+Student.num);
        }
    
    }

    2 静态方法
    用static 修饰的方法称为静态方法。
    访问静态方法是通过(类名.方法名)
    1、静态方法不能访问非静态变量
    2、非晶态方法可以访问静态变量

    静态属性或方法是在类加载的时候产生的
    非静态属性或方法是在new的时候产生的

    package com.java1995;
    
    //静态方法
    public class StaticMethod {
        public static void main(String[] args) {
                MyMethod.printString("Hello World");
                MyMethod.printInt(101);
        }
    
    }
    
    class MyMethod{
        static void printString(String str){
            System.out.println(str);
        }
        
        static void printInt(int i){
            System.out.println(i);
        }
    }

    3 静态常量
    public static final int x=123;

    package com.java1995;
    
    public class Demo {
        
        static int x=0;
        static{
            x=100;        //静态常量
        }
        
        Demo(){
            System.out.println(x);
        }
        
        public static void main(String[] args) {
            new Demo();
        }
    
    }

    【参考资料】

    [1] Java轻松入门经典教程【完整版】

  • 相关阅读:
    Linux 内核优化
    Myeclipse7.5 下载 安装 注冊 注冊码 100%成功
    Nmap命令的29个实用范例
    运维工程师必会的109个Linux命令
    linux下维护服务器之常用命令
    黑客工具软件大全100套
    Sysstat性能监控工具包中20个实用命令
    100个linux常用命令
    28 个 Unix/Linux 的命令行神器
    linux命令合集
  • 原文地址:https://www.cnblogs.com/cenliang/p/5627289.html
Copyright © 2011-2022 走看看