this关键字:

     (1)this(当局部变量和成员变量重名时,可以用关键字this区分)

          this代表对象,当前对象

            this就是所在函数所属对象的引用

            简单来说,哪个对象调用了所在的函数,this就代表哪个对象

    (2)构造函数调用构造函数,用this调用成员

      对this的调用必须是构造函数第一个语句,因为初始化动作要先执行

    (3)只要在本类中用本类对象,用this

static(静态关键字):

    静态数据可以被对象调用,类调用

    特点:1、static是一个修饰符,用于修饰成员;

       2、static修饰的成员被所有对象共享;

       3、static优先于对象存在,因为static随着类的加载已经存在;

       4、static修饰的成员多了一种调用方式,可以用类名调用;

       5、static存储共享数据,类中的私有

成员变量(实例变量)和静态变量(类变量)的区别:

       1、生命周期:成员变量随着对象的创建而存在,随着对象的被回收而释放;

               静态变量随着类的加载而存在,随着类的消失而消失;

       2、调用方式不同:成员变量只能被对象调用;

                静态变量可以被对象调用,也可以类名调用;

       3、别名不同:成员变量(实例)静态变量(类变量)

       4、存储位置:成员变量在堆中;

               静态变量存在方法区(的静态区)共享数据区;

  静态使用注意事项:1、静态方法只能访问静态成员(非静态方法可以访问静态成员,也可以访问非静态成员)

           2、静态方法不可以使用this,super关键字

           3、主函数是静态的,只能访问静态的;

public  static  void  main(String[]  args)

主函数特殊之处:1、格式是固定的

           2、被JVM所识别和调用

        public:因为权限必须是最大的

        static:不需要对象,直接用主函数所属类名调用即可;

        void:主函数没有具体返回值;

        main:函数名,不是关键字,只是JVM识别的名字

        String【】 args:主函数参数列表是一个数组类型的参数,而且元素都是字符串类型;

      jvm产生了一个数组实体但传的是0,而且传参数

      栈区存在方法的局部变量

静态什么时候用呢?

    1、静态变量:当分析对象中所具备的成员变量的值是相同的,只要数据在对象中都是不同的,就是对象特有数据,必须存储在对象中;

    2、静态函数:从源代码看,该功能是否需要访问非静态成员变量(可以加,可以不加的时候,最好加上,不浪费内存)

    3、静态代码块:随着类的加载而执行,而且只执行一次

             作用:用于给类进行初始化;

    4、构造函数代码块:构造函数具有初始化对象针对性;

               构造代码块对象初始化具有通用性;

面向对象(数组工具对象建立)

    文档注释:建立一个用于操作数组工具类,其中包含着常见的数组的函数,如最值,排序等

    文档能提取的是公有的

设计模式:

    对问题行之有效的解决办法,其实他是一种思想;

     

      

Java笔记(day7-day8)的更多相关文章

  1. Effective Java笔记一 创建和销毁对象

    Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 ...

  2. python笔记 - day7

    python笔记 - day7 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 面向对象,初级篇: http://www.cnblog ...

  3. java笔记00-目录

    --2013年7月26日17:49:59 学习java已久,趁最近有空,写一个总结: java笔记01-反射:

  4. java笔记整理

    Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...

  5. 转 Java笔记:Java内存模型

    Java笔记:Java内存模型 2014.04.09 | Comments 1. 基本概念 <深入理解Java内存模型>详细讲解了java的内存模型,这里对其中的一些基本概念做个简单的笔记 ...

  6. servlet(6) - servlet总结 - 小易Java笔记

    垂阅前必看: 这都是我总结的我觉得是学习servlet应该掌握的,我在学习期间也做了一个博客项目来让所学的知识得以巩固.下面就是博客项目链接.前面的servlet相关的笔记总汇,还有就是我把觉得在学习 ...

  7. Java笔记 —— 继承

    Java笔记 -- 继承 h2{ color: #4ABCDE; } a{ text-decoration: none!important; } a:hover{ color: red !import ...

  8. Java笔记 —— 方法重载和方法重写

    Java笔记 -- 方法重载和方法重写 h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: red ...

  9. Java笔记 —— 初始化

    Java笔记 -- 初始化 h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: red !impo ...

  10. Java笔记 —— this 关键字

    Java笔记 -- this 关键字 h2{ color: #4ABCDE; } a{ color: blue; text-decoration: none; } a:hover{ color: re ...

随机推荐

  1. zookeeper基本命令

    集群角色: Leader:客户端提供读和写服务 Follower:提供读服务,所有写服务都需要转交给Leader角色,参与选举 Observer:只提供读服务,不参与选举过程,一般是为了增强zk集群的 ...

  2. djiango的模板语言(template)

    老师的博客:http://www.cnblogs.com/liwenzhou/p/7931828.html 官方文档:https://docs.djangoproject.com/en/1.11/re ...

  3. MySSL HTTPS 评级 B 升 A+

    背景 MySSL 提供了免费的网站 HTTPS 安全评级服务,然后我用我的网站 https://hellogithub.com,测试了一下.发现安全评级为 B,最高为 A+.下面是记录我的网站从 B ...

  4. CentOS 7.6 使用kubeadm安装Kubernetes 13

    实验环境:VMware Fusion 11.0.2 操作系统:CentOS 7.6 主机名 IP地址 CPU 内存 k8s2m 172.16.183.151 2核 4G k8s2n 172.16.18 ...

  5. Asp.Net Core对接钉钉群机器人

    钉钉作为企业办公越来越常用的软件,对于企业内部自研系统提供接口支持,以此来打通多平台下的数据,本次先使用最简单的钉钉群机器人完成多种形式的消息推送,参考钉钉开发文档中自定义机器人环节,此次尝试所花的时 ...

  6. 中小研发团队架构实践之生产环境诊断工具WinDbg

    生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具,Dump文件类似于飞机的黑匣子,记录着生产环境程序 ...

  7. 《k8s-1.13版本源码分析》-测试环境搭建(k8s-1.13版本单节点环境搭建)

    本文原始地址(gitbook格式):https://farmer-hutao.github.io/k8s-source-code-analysis/prepare/debug-environment. ...

  8. 将包含经纬度点位信息的Excel表格数据导入到ArcMap中并输出成shapefile

    将包含经纬信息的Excel表格数据,导入到ArcMap中并输出成shapefile,再进行后面的操作.使用这种方法可以将每一个包含经纬信息的数据在ArcMap中点出来. 一.准备数据 新建Excel表 ...

  9. ubuntu下svn的命令使用

    Subversion的官方网站是:http://subversion.tigris.org/ SVN简介 SVN(Subversion)是一个自由.开源的项目源代码版本控制工具.目前,绝大多数开源软件 ...

  10. mssql sqlserver 不固定行转列数据(动态列)

    转自:http://www.maomao365.com/?p=5471 摘要: 下文主要讲述动态行列转换语句,列名会根据行数据的不同, 动态的发生变化 ------------------------ ...