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 ...
随机推荐
- 吴恩达深度学习笔记1-神经网络的编程基础(Basics of Neural Network programming)
一:二分类(Binary Classification) 逻辑回归是一个用于二分类(binary classification)的算法.在二分类问题中,我们的目标就是习得一个分类器,它以对象的特征向量 ...
- ASP.NET Core 实战:使用 Docker 容器化部署 ASP.NET Core + MySQL + Nginx
一.前言 在之前的文章(ASP.NET Core 实战:Linux 小白的 .NET Core 部署之路)中,我介绍了如何在 Linux 环境中安装 .NET Core SDK / .NET Core ...
- pytest-allure-poco之allure全量详细用法
allure简介 Allure Framework是一个灵活的轻量级多语言测试报告工具.貌似是目前最漂亮的一个报告工具 python版本及必要库或工具 python 3.7 pytest 4.3.1 ...
- PHP扩展高性能日志系统SeasLog简单上手
Windows部分:-------------------------------------------------------- https://pecl.php.net/package/Seas ...
- vue学习记录⑤(组件通信-父与子)
今天我们看一下组件通信. 经过前面几篇文章,我们已经可以构建出完整的单个组件,并利用路由使其串联起来访问了. 但这明显还是不够的.一个页面不可能就是个单组件,一般是由多个组件合成的.正因为如此,组件之 ...
- [转]webstorm中js文件被识别成txt类型
问题描述: webstorm中index.js文件被识别成txt格式,如下图. 原因: webstorm中js文件被识别成txt文件,原因在于txt类型识别了以当前js文件名命名的模式. 解决办法: ...
- 6.使用桌面版AI伴侣或手机版AI伴侣实时预览编程效果
1.根据自己系统下载对应版本AI伴侣,最好解压到D盘根目录. 运行ailaunch.bat ,可以启动原本自带的2.46版AI伴侣.运行AI伴侣247.bat可以启动汉化2.47版的AI伴侣.并且默认 ...
- 物理dataguard 正常切换 脚色转换,switchover_status 状态改变
正常切换切换前: 主库:SQL> select DATABASE_ROLE from v$database;DATABASE_ROLE----------------PRIMARY SQL> ...
- July 01st. 2018, Week 27th. Sunday
Empty your cup so that it may be filled. 清空杯子,方能再次装满. From Bruce Lee. We can't learn anything new if ...
- ZJOI2019一轮游记
Preface 期待已久的省选终于开始了233,关于之前的一些内容,在ZJOI2019一轮停课刷题记录都可以找到,这里不再赘述 ZJOI2019,Bless All Day -1 今天难得有休息,昨晚 ...