java笔记4
private关键字
1.是一个权限修饰符。
2.用于修饰成员
3.被私有化的成员只能在本类中有效
常用之一:
-将成员变量私有化,对外提供对应的set,get方法对其进行访问,提高对数据访问的安全性。
构造函数:
特点:
1.函数名和类名相同
2.没有返回值类型,连void都没有
3.没有具体的返回值
注意:
1.如果你不提供构造方法,系统会默认给出构造方法;
2.如果你提供了构造方法,系统将不再提供;
3.构造条件可以重载的,重载条件与普通方法相同
this关键字:
this :代表在类的对象引用
方法被哪个对象调用,this就代表那个对象
什么时候使用this呢?
局部变量和成员变量重名
static 关键字:
特点:
1.static是一个修饰符,用来修饰成员变量
2.static修饰的成员是被多个对象共享的,修饰的数据就成为了共享数据
3.static修饰的成员,优于对象先存在计算机内存中的,随着类的加载而存在
4.多了一种调用方式,类名.成员
成员变量与静态变量区别?
1.存储位置不同
成员变量存在堆内存中
静态变量存在静态代码区
2.调用方式不同
成员变量是通过对象,成员来调用
静态变量可以通过对象,类名来调用
3.生命周期不同
成员变量存随呃呃对象的产生而产生
静态变量存在静态代码区
4.别名不同
成员变量也叫实例变量
静态变量也叫类变量
注意:
1.静态成员只能访问静态成员(费静态成员既都可以访问)
2.静态方法中不能有this与super
单例设计模式
怎么保证对象只有一个呢?
1.不能让别人new对象(加private)
2.对外提供一个公共方法,供别人调用来完成创建对象这个操作
3.在本类中创建一个本类的实例(即没有调用这个对象就创建了)//立即加载
代码块
1.构造代码块
2.静态代码块
3.局部代码块
4.构造函数
局部代码块:特点以{}划定代码区域,此时只需要关注作用域的不同即可
构造代码块:定义在类中成员位置的代码块
特点:优先于构造方法执行,构造代码块用于执行所有对象均需要的初始化动作,每创建一个对象均会执行一次构造代码块
静态代码块:定义在成员位置,使用static修饰的代码块
特点:它优先于主方法执行,优先于构造代码块执行,当以任意形式第一次使用到该类时执行。该类不管创建多少对象,静态代码块只执行一次,可用于给变量赋值,用来给类进行初始化。
java笔记4的更多相关文章
- Effective Java笔记一 创建和销毁对象
Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 ...
- 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 ...
- Java 笔记 —— java 和 javac
Java 笔记 -- java 和 javac h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: ...
随机推荐
- 利用dnslog进行sql注入
更多内容,欢迎关注微信公众号:信Yang安全,期待与您相遇. 能够利用dnslog进行注入的两个关键点:secure_file_priv 不能为NULL,仅支持 Windows但不支持 Linux s ...
- .net Web 项目的文件/文件夹上传下载
以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传 ...
- php之大文件分段上传、断点续传
前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...
- XA 事务
4.11.3 什么是XA 事务? <数据库程序员面试笔试宝典>第4章数据库基础,本章主要介绍数据库基础部分的面试题,比较适合应届毕业生,也适合由其他岗位转数据库岗位的人员.本节为大家介绍什 ...
- Dubbo+zookeeper实现单表的增删改查
1.数据库准备 建表语句 CREATE TABLE `tb_brand` ( `id` ) NOT NULL AUTO_INCREMENT, `name` ) DEFAULT NULL COMMENT ...
- element ui 中的时间选择器怎么设置默认值/el-date-picker区间选择器怎么这是默认值
template代码 <el-date-picker value-format="yyyy-MM-dd" v-model="search.date" ty ...
- SDN第七次上机作业
1.补充并运行basic代码 任务是实现基础的交换机转发数据包功能 补充后代码如下: /* -*- P4_16 -*- */ #include <core.p4> #include < ...
- 【2019】Charles视频教程,接口测试工具最新教程
Charles 是在 windows/mac/linux下常用的网络封包截取工具,也是电商/直播/搜索/金融/H5/App等测试专用接口测试工具. Charles 支持Http/Https/Webso ...
- pm升级到最新版本、指定版本
npm 升级到最新版本 //linux下 npm install -g npm npm升级到指定版本 //比如升级到5.6.0 npm install -g npm@5.6.0
- visual studio(vs)初始化
cmd 进入到 devenv.exe 所在目录 执行一下命令 devenv.exe /setup /resetuserdata /resetsettings