• 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++)

  • 相关阅读:
    Support依赖库大全
    反射调用泛型
    会爬行的小乌龟
    改进版——使用了双缓冲技术
    启动运行发现窗体不能最大化,添加
    添加图层
    实现放大,缩小,漫游,复位等功能
    从上一个项目中我得到的反思
    ​Error -4075: File not found. An error occurred merging module <MODULENAME> for feature <FEATURENAME>.
    总结—angularjs项目
  • 原文地址:https://www.cnblogs.com/maxinliang/p/2771583.html
Copyright © 2020-2023  润新知