刘意-Java基础视频(基础部分)笔记(一)
2.1关键字:被Java语言赋予特定含义的单词
特点:组成关键字单词的字母全部小写
注意:
A:goto和const是保留字
B:类似于Notepad++这样的高级记事本,针对关键字都有特殊的颜色标签。
2.2标识符:就是给类,接口,方法变量等起名字。
组合规则:
A:英文字母大小写
B:数字字符
C:$和_
注意事项:
A:不能以数字开头
B:不能是Java中的关键字
C:java语言严格区分大小写
2.3标识符(常见命名规则)
包:其实就是文件夹,用于把相同的类名进行区分
全部小写
单级:liuyi
多级:cn.itcast
cn
itcast
类或者接口:
一个单词:单词的首字母必须 大写
举例:Student,Dog
多个单词:每个单词的首字母必须大写
举例:HelloWorld,StudentName
方法或者变量:(加括号的是方法)
一个单词:单词的首字母小写
举例:main,age
多个单词:从第二个单词开始,每个单词的首字母大写
举例:studentAge,showAllNames()
常量:
一个单词:全部大写
举例:PI
多个单词:每个字母都大写,用_隔开
举例:STUDENT_MAX_AGE
2.4注释概述及其分类
注释:用于解释说明程序的文字
Java中注释的分类及格式
单行注释://注释文字
多行注释:/* 注释文字 */
注意:多行不可以嵌套使用,而单行是可以的
文档注释:被Javadoc工具解析生成一个说明书,面向对象部分讲解
2.5HelloWorld案例加入注释版
需求:我准备写一个Java程序,把“HelloWorld”这句话输出在控制台
分析:
A:要写一个Java程序,必须定义类
B:把数据能够输出,说明我们的程序是可以独立运行的,而程序要独立运行,必须定义main方法
C:把数据输出在控制台,必须使用输出语句
实现:
A:Java语言提供了一个关键字:class用来定义类,后面跟的是类名
B:mian方法的格式是固定的:
public static void main (String[] args){}
C:输出语句的格式是固定的:
System.out.println("HelloWorld");
"HelloWorld"这个内容是可以改变的
2.6注释的作用
A:解释说明程序,提高程序的阅读性
B:可以帮助我们调试程序
2.7常量的概述和使用
常量:
在程序执行过程中,其值不发生改变的量
分类:
A:字面值常量
B:自定义常量
字面量常量:
A:字符串常量 用引号括起来的内容
案例:“hello”,“world”,“HelloWorld”
B:整数常量 所有的整数
案例:100,200
C:小数常量 所有的小数
案例:10.23,110.11
D:字符常量 用单引号括起来的内容
举例:'a','A','0'
错误的:'ab'
E:布尔常量 比较特殊
举例: true,false
F:空常量
举例:null
2.8进制概述以及二进制、八进制、十六进制图解
进制:是一种进位的方式。x进制,表示逢x进1。
计算机的电子原件的状态:开,关。
那么,我们表达数据的时候,也是按照开,关的状态来表示的
如果我们表达数据仅仅用两种状态,那么能够表达的数据是比较少的,而我们
常见的数据;英文字母,数字,标点符号。这就很多了。
两个状态肯定是不够的。
为了能够表示更多的数据,国际化标准组织就规定:用8个这样的信号来表示一个数据,
这个数据的单位叫:字节。
后来,我们就通过数字1,0分别来表示开和关。这个时候。我们把上面的数据用1,0改进。
由这样的1,0组成的数据就是二进制数据。
1 byte = 8bit
1 k = 1024byte
1 m = 1024k
1 g = 1024m
1 t = 1024g
把二进制的数据,从右开始,每三位一组合。最左边不够的时候,补0。然后,分别计算出
对应的十进制数值。最后。在把每个十进制的数据组合起来。就是一个八进制数据
把二进制的数据。从右开始。没四位一组合。最左边不够的时候。补0.然后分别计算出对应的十进制数值,
最后,再把每个十进制的数据组合起来,就是一个十六进制数据
规则:
进制越大,表现形式越短
2.9不同进制数据的表现形式
二进制
由0,1组合,以0b开头
八进制
由0,1...7组成,以0开头
十进制
由0,1.....9组成,整数默认是十2.10进制的
十六进制
由0,1.....9,a,b,c..f(大小写均可)。以0x开头
2.10任意进制到十进制的转换图解
系数:每一个位上的数据值本身就是系数。
基数:x进制的基数就是x
权:我们针对每一个位上的数据进行编号。从右边,并且是从0开始编号
这个编号就是该位上的数据的权值
2.11任意进制到十进制的练习
2.12十进制到任意进制的转换图解
2.13十进制到任意进制的练习
2.14快速的进制转换法
2.15原码反码补码的讲解
2.16原码反码补码的练习
2.17变量的概述及格式
变量:就是在程序的执行过程中,其值是可以在一定范围内发生改变的量。
变量的组成规则:
A:必须对其进行限定,用数据类型进行限定
B:我们在运算的时候,不可能是拿着这个空间去运算。我
们真正运算时使用的是该空间的值,我们就给该空间起
了一个名字。变量名
C:即使你有数据类型了,你有变量名了,但是如果没有值,这个空间是一个垃圾空间,没有任何意义。初始化值
定义变量的格式是:
数据类型 变量名 = 初始化值;
2.18数据类型的概述和分类
数据类型:Java是一种强类型的语言,针对每一种数据都定义了明确地数据类型。
数据类型分类:
A:基本数据类型
B:引用数据数据类型(类,接口,数值)
基本数据类型分类:4类8种
A:整数 占用字节数
byte 1
short 2
int 4
long 8
B:浮点数
float 4
double 8
C:字符
char 2
D:布尔
Boolean 1
注意:
整数默认是int类型
浮点数默认是double类型
2.19定义不同数据类型的变量
长整型后缀用L或者l标记。建议使用L
单精度浮点数用F或者f标记。建议使用F
2.20使用变量的注意事项
使用变量的时候要注意的问题:
A:作用域
变量定义在哪个大括号内,它就在这个大括号内有效。
并且,在同一个大括号内不能同时定义同名的变量
B:初始化值
没有初始化值的变量不能直接使用。
你只要在使用前给值就行,不一定非要在定义的时候立即给值
推荐在定义的时候给值
定义变量的格式:
A:数据类型 变量名 = 初始化值;
B:数据类型 变量名;
变量名 = 初始化值;
C:在一行上建议只定义一个变量,可以定义多个,但是不建议
2.21数据类型转换默认转换
一般来说,我们在运算的时候,要求参与运算的数据类型必须一致
注意:
Boolean类型不能转换为其他的数据类型
默认转换(从小到大的转换)
A:byte,short,char-int-long-float-double
B:byte,short,char不转换,他们参与运算首先转换为int类型
2.22不同数据类型变量参与运算图解
2.23数据类型转换强制转换
强制转换:
从大的数据类型到小的数据类型。
格式:
目标数据类型 变量 = (目标数据类型)(被转换的数据)
注意:
不要随意的去使用强制转换,因为它隐含了精度损失问题
2.24强制转换的思考题
思考题1:请问下面这个有没有问题
double d = 12.345;
float f =d;
思考题2:看看下面两个定义有没有区别呢?
float f1 = (float)12.345;
float f2 = 12.345f;
f1其实是通过一个double类型转换过来的。
而f2本身就是一个float类型。
2.25变量相加和常量相加的区别面试题
面试题:
byte b1=3;b2=4,b;
b=b1+b2
b=3+4
哪句是编译失败的呢?为什么呢?
b = b1 + b2;是有问题的。
因为变量相加,会首先看类型问题,最终把结果赋值的也会考虑类型问题
常量相加,首先做加法,然后看结果是否在赋值的数据类型范围内,如果不是,才报错
2.26强制转换数据溢出后的结果怎么算
分析过程:
我们要想知道结果是什么,就应该知道是如何进行计算的。
而我们又知道计算机中数据的运算都是补码进行的
而要得到补码,首先要计算出数据的二进制
A:获取130这个数据的二进制
00000000 00000000 00000000 10000010
B:做截取操作,截取byte类型的了
10000010
这个结果是补码
C:已知补码求原码
符号位 数值位
补码: 1 0000010
反码: 1 0000000
原码: 1 1111110
2.27字符数据参与运算
通过字符和整数相加,我们给出一张表:ASCII码表。
通过看完这张表以后,我们要记住三个值:
'a' 97
'A' 65
'0' 48
2.28字符串参与运算
字符串数据和其他数据做+,结果是字符串类型。
这里的+不是加法运算,而是字符串连接符
运用:字符串连接符和从左倒右的运算规则
参考网站:
https://www.bilibili.com/video/av37614313?p=26
刘意-Java基础视频(基础部分)笔记(一)相关推荐
- 传智播客-刘意-java深入浅出精华版学习笔记Day08
工具中使用静态: 在同一个类中,main方法只能访问静态方法. [错误:无法从静态上下文中引用非静态,这样的错误一定是因为在main方法中调用了非静态方法.] 对非静态方法来说,只能通过对象(也就是其 ...
- 传智播客-刘意-java深入浅出精华版学习笔记Day05
[视频的前半段讲的是方法.因为方法和函数几乎是一样的,所以直接跳过去了,从数组开始看,唯一有一点需要注意的,就是现在我们暂时都把方法定义为public static型的] 定义格式: 数组的初始化: ...
- 音视频基础——视频基础知识
感情中特能折腾的人,很多都是之前恋情里受过创伤的人.人总有一种"补偿情结",希望把之前吃过的亏在日后一股脑儿地补回来.那些陈年旧帐就这样算到了新人头上.殊不知,成熟的爱,是伤口处开 ...
- 刘意-java基础视频(API-IO流)笔记(一)
异常:程序出现不正常的情况. Throwable类是java语言中所有错误或异类的超类 Error是Throwable的子类,用于指定合理的应用程序不应该试图捕获的严重问题 RuntimeExcept ...
- 视频基础--视频基础知识介绍
1.FOV简介 FOV,是Field of View(视场角)的缩写. FOV定义: 视场角显示设备所形成像中,人眼可观察到部分的边缘与人眼瞳孔中心连线的夹角,包括水平视场角.垂直视场角.对角线视场角 ...
- 传智 刘意 2015年Java基础视频-深入浅出精华版 笔记 day24~day26(2016年4月26日13:11:30)
day24 1.多线程(JDK5之后的Lock锁的概述和使用) Lock: void lock(): 获取锁. void unlock():释放锁. ...
- 传智播客 刘意_2015年Java基础视频-深入浅出精华版 笔记(2015年10月25日23:28:50)
day01 win 7系统打开DOS有趣方法:按住shift+右键,单击"在此处打开命令窗口"(注意:在此处可以是任何的文件夹,不一定是桌面) 用DOS删除的文件不可以在回收站恢复 ...
- 传智播客 刘意_2015年Java基础视频-深入浅出精华版 笔记(day01~day10)(2015年11月17日20:51:59)
本笔记是个人笔记+摘录笔记相结合,非完全原创 day01 win 7系统打开DOS有趣方法:按住shift+右键,单击"在此处打开命令窗口"(注意:在此处可以是任何的文件夹,不一定 ...
- 传z播客 刘意_2015年Java基础视频笔记(day18~day20(2016年3月20日14:36:05)
day18 1.Map引入 Map是区分于Collection的另外一个"老大" 作为学生来说,是根据学号来区分不同的学生的,那么假设我现在已经知道了学生的学号,我要根据学号去获取 ...
- 传z播客 刘意_2015年Java基础视频笔记(day18~day20)(2016年3月20日14:33:31)
day18 1.Map引入 Map是区分于Collection的另外一个"老大" 作为学生来说,是根据学号来区分不同的学生的,那么假设我现在已经知道了学生的学号,我要根据学号去获取 ...
最新文章
- Linux 分割、合并文件
- mysql git 获取 稳定版本 源码_webmagic新版文档(更新中)
- ORA-01843:无效的月份
- springcloud config服务端配置(一)
- Effective C++ ——设计与声明
- [转]加载纹理与使用glGenTextures时应注意的一点(解决吃内存)
- scrapy框架持久化存储
- 【Zotero同步管理】【Zotero 6.0 + 坚果云 + iPad官方zotero APP】最新版教程
- OpenEmbedded 中文手册
- oracle peoplesoft enterprise,Solix实现与Oracle PeopleSoft Enterprise9.1整合
- 工业互联网+安全生产 | 面向安全生产的工业互联网解决方案
- 中国OpenAI?李志飞放弃了;AutoGPT试玩指南;AI大时代的家长完整手册;电商数字模特生成实践 | ShowMeAI日报
- 工业通讯 | Profinet协议基础知识(四)
- Java基本语法总结
- 使用gulp为项目中的文件自动添加版本号之实践思路
- Mac中pycharm安装低版本tensorflow1.8的方法
- 如何让键盘支持自动输入
- IC卡电表及用电信息管理系统
- 史上最强大的权限系统设计方案——极简主义
- [附源码]JSP+ssm计算机毕业设计爱心捐赠平台82yxl【源码、数据库、LW、部署】
热门文章
- 推荐一款好用的取色器(仅支持windows)
- python清屏命令-python清屏命令
- python清空屏幕代码_python 清屏
- java如何建立数据库_Java怎么连接数据库
- java毕业设计美发门店管理系统Mybatis+系统+数据库+调试部署
- graphviz安装
- 伟库网与英特尔联手打造“用友伟库云”
- 离线服务器系统补丁如何打,Win系统补丁要不要打?如何打补丁才最适合?
- 班级量化考核系统php代码,学生信息量化考核管理系统
- oracle iso,Oracle数据库之Linux操作系统各版本ISO镜像下载(包括oracle linux\redhat\centos\u...