• java学习笔记11-static关键字


    如果在类中使用static关键字创建方法,这种方法称为类方法,可以在这个类中直接引用。而不是用static创建的方法。这种方法称为对象方法(实例方法),需要创建对象后才能使用。

    package lesson;
    
    public class TestDemo {
       public static void methon1(){
           System.out.println("类方法");
       }
       public void methon2(){
           System.out.print("实例方法");
       }
    
       public static void main(String[] args){
           TestDemo.methon1();
           TestDemo.methon2();
       }
    }

    如果在类,方法外,使用static创建的变量。这种变量称为类变量,类变量属于这个类,可以在本类中的任何类方法里面直接引用。而非static关键字声明的变量为成员变量,这种变量属于这个类的对象。可以在实例方法中引用。

    package lesson;
    
    public class TestDemo {
       static int no1=10;
       int no2=20;
       public static void main(String[] args){
           System.out.println(no1);
           System.out.println(no2);
       }
    }

    在类的加载时(第一次调用类),类的成员变量会进行初始化,引用数据类型会默认初始化为null,int和long类型变量初始化为0,float和double的变量会初始化为0.0

    类在加载时,除了初始化变量,还会调用类的静态块和动态快

    静态块:使用static关键字修饰,static{}。有多个静态块会顺序执行

    动态快:动态快不需要任何关键字修饰,直接使用花括号包含。有多个动态快会顺序执行

    类在初始化时,静态块只会在第一次加载时执行一次,而动态快在每次使用此类都会执行。

    package lesson;
    
    public class TestDemo {
        static{
            System.out.println("静态块");
        }
    
        {
            System.out.println("动态快");
        }
    
       public static void main(String[] args){
           TestDemo test = new TestDemo();
           TestDemo test1 = new TestDemo();
    
       }
    }

    当调用静态方法时,是不会加载动态快的

    package lesson;
    
    public class TestDemo {
        static{
            System.out.println("静态块");
        }
    
        {
            System.out.println("动态快");
        }
        public static void Hello(){
            System.out.println("Hello");
        }
    
       public static void main(String[] args){
           TestDemo.Hello();
    
       }
    }

  • 相关阅读:
    pwnable.kr之input
    pwnable.kr之bof
    pwnable.kr之fd
    运维及服务器组成详解
    查看锁信息(开启InnoDB监控)
    【原创】记一次MySQL大表高并发写入引发CPU飙升的排障过程
    【原创】获取MySQL crash 时的core file
    【原创】MySQL Replay线上流量压测工具
    python面向对象
    TCP三次握手与四次挥手
  • 原文地址:https://www.cnblogs.com/myal/p/10750978.html
Copyright © 2020-2023  润新知