zoukankan      html  css  js  c++  java
  • java关键字

    This:表示是一个对象的默认引用,总是指向调用该方法的对象,根据this出现的位置不同,this作为对象的引用有两种情形:

              1、构造器中引用该构造器执行初始化的对象!

              2、在方法中引用调用该方法的对象!

    Static:静态的,不依赖对象,依赖类(类级别)

               可以在对象中共享

    class Tt{
       static int a;
    }
     
    public class Main {
       public static void main(String[] args) {
          Tt tt1=new Tt();
          tt1.a++;
          System.out.println(tt1.a);
          System.out.println("*************");
          Tt tt2=new Tt();
          tt2.a++;
          System.out.println(tt2.a);
       }
    }

    这里第一次打印tt1.a时等于1;

    第二次打印时因为重新new了对象理应tt2.a也等于1,但是由于a属性加了static所以不依赖对象而是依赖类,可以在对象中共享,所以tt2.a是基于tt1.a上等于2!

    static方法中不可以直接调用非static的属性和方法;想要使用必须new新对象,用对象调用!

    Static三个说明:

    1、      静态变量 :类级别变量,是这个类的变量而不是某一个对象的变量。可以用类名调用(当然也可以用对象调用),所有的对象所使用的静态变量所使用的是同一份(一个类生产多个对象时,用一个对象改变了一个静态变量,那么所有对象的这个静态变量都会改变,堆中这个“静态区”,专门放置静态变量区)。

    2、      静态函数:可以直接用类名调用,在静态函数中不能用this(在静态函数中不能直接使用非静态成员函数和非静态成员变量,静态函数中只能用静态成员变量)如果一个函数不使用成员变量(不受哪个对象调用该对象左右)理论上就可以定义成静态函数,一般来讲“工具函数”定义为静态函数

    3、      静态代码块

    Static{

                Sysout(“静态代码块!”);

    }                                                优于主函数运行(类在装载的时候执行)

    1给静态变量赋初始值2装载本地代码(native->c、c++)

  • 相关阅读:
    无服务计算应用场景探讨及 FaaS 应用实战
    从零入门 Serverless | Serverless 应用如何管理日志 & 持久化数据
    实验楼流程
    go beego框架与python实现数据交互
    golang 并发运算时主线程先运行完,子线程运行没结束的问题记录
    滑动窗口解决最小子串问题 leetcode3. Longest Substring Without Repeating Characters
    golang 遍历树状结构
    golang 三维向量相关操作
    golang 矩阵乘法、行列式、求逆矩阵
    golang float32/64转string
  • 原文地址:https://www.cnblogs.com/maxinliang/p/2771583.html
Copyright © 2011-2022 走看看