zoukankan      html  css  js  c++  java
  • 暑假自学(23)

    static:
    1.static可以用来修饰:属性,方法,代码块,内部类
    2.static修饰属性:静态变量
    2.1 属性:按是否使用static修饰,又分为:静态属性 vs 非静态属性(实例变量)
    实例变量:我们创建了类的多个对象,每个对象都独立的拥有一套类中的实例变量,其中一个对象的变量修改不会影响其他对象的变量
    静态变量:所有对象共享同一个静态变量,修改某一个对象的静态变量时会影响其他变量。
    2.2 static修饰属性的其他声明:
    ① 静态变量随类的加载而加载。可以通过类.静态变量来调用 类名.静态变量 Chinese.nation = "中国"
    ② 静态变量的加载要早于对象的创建
    ③ 由于类只会加载一次,则静态变量在内存中也只会存在一份,存在方法区的静态域中。


    ④(能否调用) 类变量 实例变量
    类 yes no
    对象 yes yes
    2.3
    3.static修饰方法:静态方法
    ① 随着类的加载而加载(通过类的方式调用)
    ② 静态方法中,只能调用静态的方法或属性(原因:在静态方法加载时,非静态变量或方法并没有加载)
    非静态方法中,都可以调用
    4.注意点
    4.1静态方法不能使用this,super
    4.2静态属性和方法的使用,从生命周期的角度理解(先加载和后加载)
    5.在所有对象的属性都一样的时候,或者工具类,可以定义为static

    static代码测试

    public class StaticTest {
    public static void main(String[] args) {
    Chinese c1 = new Chinese();
    c1.name = "姚明";
    c1.age = 40;

    Chinese c2 = new Chinese();
    c2.name = "马龙";
    c2.age = 30;

    c1.nation = "CHN";
    c2.nation = "China";


    System.out.println(c1.nation);
    System.out.println(c2.nation);

    }
    }
    class Chinese{
    String name;
    int age;
    static String nation;
    }

  • 相关阅读:
    Spring 原生SQL查询
    Spring 使用注解查询 JPQL 按对象查询
    JAVA 判断输入流是否为空
    Spring-AOP教程
    错误笔记5, Spring datatable Error creating bean with name 'userController'
    Spring 分页查询
    前端传数据到servlet数据乱码
    sql 分页查询
    移动APP性能测试
    【8】接口、多态
  • 原文地址:https://www.cnblogs.com/buxiang-Christina/p/13394155.html
Copyright © 2011-2022 走看看