【168天】黑马程序员27天视频学习笔记【Day07】
【168天】黑马程序员27天视频学习笔记【Day07】
叨逼叨两句
决定了,我会记住这一天!
07-01:构造方法Constructor概述和格式
构造方法概述和作用
给对象的数据(属性)进行初始化。
构造方法格式特点
- 方法名与类名相同(区分大小写)
- 没有返回值类型,没有void
- 没有具体返回值return;
07-02:构造方法的重载及注意事项
重载
方法名相同,但与返回值类型无关。
构造方法注意事项
建议永远自己给出无参构造方法
07-03:给成员变量赋值的两种方式的区别
- setXXX赋值
- 构造方法赋值
07-(04-05):练习
07-06:创建一个对象的步骤与内存分析(重要!!!)
07-(07-08):练习
07-09:static关键字及内存图(重要!!!)
- 方法区加载类,其中包含静态区
- 该视频值得再看一遍
07-(10-11):static关键字特点及注意事项
特点
- 随着类的加载而加载,优先于对象而存在。
- 被类的所有对象共享【共性用静态,特性用非静态,这就是应用场景】
可以通过类名调用
- 其实它本身也可以通过对象调用,但推荐还是用类名调用
- 静态修饰的内容一般我们称其为:与类相关的,类成员。
注意事项
- 成员变量和成员方法虽然在类加载时被加载进来了,但是它们必须在创建对象后,由对象来调用,不能直接使用(视频中老师用解压缩类比相当nice【07-11视频值得再看一遍】)
静态方法中是没有this关键字的
- 静态属性与方法是随着类的加载而加载,this是随着对象的创建而存在。【成员变量都是用this去调用的,你直接写个num其实等同于写个this.num【详细解释见视频】】
- 静态比对象先存在
静态方法只能访问静态的成员变量和静态的成员方法。
静态方法
- 成员变量:只能访问静态变量。
- 成员方法:只能访问静态成员方法。
非静态方法
- 成员变量:可访问静态变量,也可访问非静态变量。
- 成员方法:可访问静态成员方法,也可访问非静态成员方法
- 简单记:静态只能访问静态
07-12:静态变量与成员变量的区别
所属不同
- 静态变量属于类,也称类变量
- 成员变量属于对象,也称实例变量或对象变量
内存中位置不同
- 静态变量存储在方法区中的静态区
- 成员变量存储于堆内存
内存出现时间不同
- 静态变量随着类的加载而加载,随着类的消失而消失。
- 成员变量随着对象的创建而创建,随着对象的消失而消失。
调用不同
- 静态变量可以通过类名调用,也可以通过对象名调用。
- 成员变量只可以通过对象名调用。
07-13:main方法的格式详解
- public:被JVM调用,所以权限要足够大
- static:被JVM调用,不需要创建对象,直接类名调用即可
- void:被JVM调用,不需要有任何返回值。
- main:只有这样写才能被JVM识别,main不是关键字。
- String[] args:以前是用来接收键盘录入的,args是唯一能改的地方。
String[] args的使用见下图(目前已经不推荐使用了)
![168-4](http://a3.qpic.cn/psb?/V13aP5rZ2U5DOS/BbbTiITUu9lip7ft96DAhWbpvM*OwEeNTqYwz9i3iac!/b/dAEBAAAAAAAA&bo=KAOAAgAAAAADAIw!&rf=viewer_4)
07-14:工具类中使用静态
如果一个类里面所有方法都是静态方法,那么你一定要多做一步,将其构造方法私有化(即加private修饰符)。
07-15:API文档制作
- 说明书不会体现私有修饰符修饰的内容
制作步骤
- 加文档注释
通过javadoc命令生成说明书
- @author(提取作者内容)
- @version(提取版本内容)
- javadoc -d 指定的文件目录 -author -version ArrayTool.java
- @param 参数名称//形式参数的变量名称@Return 函数运行完返回的数据。
07-16:查看JDK的API文档
07-17:Math类的随机数
07-18:练习
【168天】黑马程序员27天视频学习笔记【Day07】相关推荐
- 【176天】黑马程序员27天视频学习笔记【Day11-上】
叨逼叨两句 正式结束了,之后就是收尾工作. 今天想休息一下,任务就不做满了. 未来定个标准,事不过三,一天的任务,最多分三天完成,超过要罚分. 11-(01-04):Eclipse使用方法 程序的编译 ...
- 【186天】黑马程序员27天视频学习笔记【Day15-上】
叨逼叨两句 今天和朋友聊了聊,感觉真的很好,人还是得多跟别人交流,才能发现自己一些观念和理论上的漏洞. 今天帮了大家一个忙,总算要接近尾声了,开心啊. 我要准备去做一件伟大的事! 很高兴姐姐迈开了这一 ...
- 【208天】黑马程序员27天视频学习笔记【Day21-中】
叨逼叨两句 今天又了结一件事,好累,好爽. 这几天在哥们家玩,更新内容不会断,但会相对少些了. 21-09:将文本反转 流对象要尽量晚开早关 package com.test.demo001;impo ...
- 【201天】黑马程序员27天视频学习笔记【Day18复习脑图】
叨逼叨两句 Day17看完了,OK~ 下午把其它琐事搞完~ Day18脑图
- 【198天】黑马程序员27天视频学习笔记【Day13-14复习脑图】
叨逼叨两句 快点搞定这堆破事吧.总让我分心.. Day13脑图 Day14脑图
- 【199天】黑马程序员27天视频学习笔记【Day15-16复习脑图】
叨逼叨两句 原来,我最想要的,其实是自由 规避风险是本能,买卖风险是智能 Day15脑图 Day16脑图
- 【218天】黑马程序员27天视频学习笔记【Day20-21复习脑图】
叨叨两句 不要追求完美,不断改进. 运用好大脑外挂 Day20脑图 Day21脑图
- 哔哩哔哩黑马程序员C++课程个人学习笔记
写在前面:此博文仅作为个人c++学习笔记,或有错误不建议参考!!! 视频链接:黑马程序员c++教程从0到1 目录 一.第一部分c++基础 1.1 c++初识 1.1.1 hello world 1.1 ...
- 【C++】黑马程序员-C++核心编程学习笔记
前言 根据黑马程序员C++课程内容,结合讲义,将自己学习C++的过程中将自己觉得有必要记下的笔记进行整理,方便复习回顾,编程环境为VSCode. 本阶段主要针对C++面向对象编程技术做详细讲解,探讨C ...
最新文章
- 小目标检测的增强算法
- catia直线测距怎么调出来_为户外远程测距而生
- 皮猜按下谷歌招聘暂停键,疫情之下,「紧日子」来了
- 开课吧python好吗-Python是个什么鬼?求职为何这么难
- C++ 中的 IO流
- 为什么有时打不开爬取到的图片
- LeetCode每日一题 143. 重排链表
- Python 面向对象 --- 文件
- mysql case when then 函数_MySQL case when then 语句使用和时间函数使用
- 提权命令_利用Linux文本操作命令ed进行提权
- Centos linux php扩展安装步骤
- Java dom序列化字符串,java – 如何在序列化之前从DOM中剥离仅空白的文本节点?...
- windows 7 安装 db2 v11.1 下载 安装教程
- 宏杉MacroSAN MS3000G2 SPC-1测试性价比第一
- java汉字的编码_Java中文编码问题小结
- 【大数据】大数据技术框架,有这一篇文章就够了
- folder汇总字段的实现
- [Bug] Spring相关bug收集
- 洛谷 P1878 舞蹈课 —— 小顶堆
- Rails部署云环境配置(Passenger+Apache)
热门文章
- Ubuntu 12.04 如何切换回英文
- react实战项目_React实战之React+Redux实现一个天气预报小项目
- 20万数据 sql 快还是 java快?_H2数据库学习(一)
- 高端android手机,高端机型很难选择?这几款手机就很不错,你肯定有中意的
- rf调用的python函数报错_Robot Framework(15)- 扩展关键字
- oracle01507报错,oracle报错ORA-01507
- c语言的运算答案,C语言运算符与表达式的练习题答案.doc
- linux lamp架构部署,Centos7部署LAMP平台之架构之路
- Liferay 用PortletSession 实现不同Liferay之间通讯
- 年薪50W+!懂这个的程序员就这么豪横!