Java笔记(day7-day8)
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)的更多相关文章
- Effective Java笔记一 创建和销毁对象
Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 ...
- python笔记 - day7
python笔记 - day7 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 面向对象,初级篇: http://www.cnblog ...
- java笔记00-目录
--2013年7月26日17:49:59 学习java已久,趁最近有空,写一个总结: java笔记01-反射:
- java笔记整理
Java 笔记整理 包含内容 Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...
- 转 Java笔记:Java内存模型
Java笔记:Java内存模型 2014.04.09 | Comments 1. 基本概念 <深入理解Java内存模型>详细讲解了java的内存模型,这里对其中的一些基本概念做个简单的笔记 ...
- servlet(6) - servlet总结 - 小易Java笔记
垂阅前必看: 这都是我总结的我觉得是学习servlet应该掌握的,我在学习期间也做了一个博客项目来让所学的知识得以巩固.下面就是博客项目链接.前面的servlet相关的笔记总汇,还有就是我把觉得在学习 ...
- Java笔记 —— 继承
Java笔记 -- 继承 h2{ color: #4ABCDE; } a{ text-decoration: none!important; } a:hover{ color: red !import ...
- Java笔记 —— 方法重载和方法重写
Java笔记 -- 方法重载和方法重写 h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: red ...
- Java笔记 —— 初始化
Java笔记 -- 初始化 h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: red !impo ...
- Java笔记 —— this 关键字
Java笔记 -- this 关键字 h2{ color: #4ABCDE; } a{ color: blue; text-decoration: none; } a:hover{ color: re ...
随机推荐
- Netty实现高性能IOT服务器(Groza)之精尽代码篇中
运行环境: JDK 8+ Maven 3.0+ Redis 技术栈: SpringBoot 2.0+ Redis (Lettuce客户端,RedisTemplate模板方法) Netty 4.1+ M ...
- jdk源码阅读笔记-String
本人自学java两年,有幸初入这个行业,所以功力尚浅,本着学习与交流的态度写一些学习随笔,什么错误的地方,热烈地希望园友们提出来,我们共同进步!这是我入园写的第一篇文章,写得可能会很乱. 一.什么是S ...
- java~springcloud微服务目录索引
回到占占推荐博客索引 最近写了不过关于java,spring,微服务的相关文章,今天把它整理一下,方便大家学习与参考. java~springcloud微服务~目录索引 springcloud~服务注 ...
- java中用swing做一个windows计算器
目录 主函数 普通计数器 科学计算器 注意: @(java中用swing做一个windows计算器) 前言: 来看这篇教程估计都是java课程设计吧,现在已经没有公司很少使用swing组件了,java ...
- Jmeter + Grafana搭建实时监控可视化
小贴士: 建议使用jmeter3.3+版本,在这个版本以后才有backend listenter 对接influxDB. Jmeter中backend listenter如图 influxdbUr ...
- 关于ORACLE的各种操作~持续汇总~
增.删.改: 增加所有 INSERT INTO 表名 VALUES(序列名.NEXTVAL,'值1','值2','值3','值4','值5'); 指定增加 INSERT INTO 表名(字段1,字段2 ...
- SQL Server获取连续区间的日期
个人理解的方法有三种 通过系统表master..spt_values获取 用WHILE循环获取 游标获取 CET递归(感谢评论区博友) 方法一:通过系统表master..spt_values获取 1. ...
- 排错:Windows系统异常导致Filebeat无法正常运行
Windows 下Filebeat排错Case实例一份,请查收. 问题描述: Windows Server下Filebeat Agent服务无法正常启动,导致网络数据打点无法正常进行,影响大范围用户网 ...
- http-server安装及运行
vue项目打包后会生成一个dist目录,我们想要直接运行dist目录...除了复制静态文件到服务器nginx目录下,然后启动nginx来启动项目, 另外一个办法就是安装http-server 直接启动 ...
- 一份.NET 容器化的调查小结
小编在上个月在微信公众号"dotnet跨平台" 做了一个针对.NET 容器化的调查:https://mp.weixin.qq.com/s/oszbuIORT0G8XLLgMZzkn ...