小白学习java第二天
1. eclipse配置编译环境
eclipse的jdk插件
项目配置Java编译环境
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y02FeB0G-1593609648402)(G:_千锋\JAVAEE\笔记\截图\编译环境的配置.png)]
2. eclipse快捷键
- 快速删除:ctrl+d
- 快速移动代码:alt+方向键
- 代码提示:alt+/
- 快速复制:ctrl+alt+方向键
- 查看类结构:ctrl+o
- 单行注释:ctrl+/
- 多行注释:ctrl+shift+/
- 文档注释:/**+enter
- 代码缩进 ctrl+shift+f
3. 标识符(identifier)规则
- 概述
- 用来给类,方法,接口,变量命名的字符序列
- 组成规则
- 数字
- 大小写字母
- _和$
- 不能以数字开头
- 不能是关键字
- 总结
- 一定要遵守,否则编译报错,无法运行
4. 标识符的书写规范
为什么要规范
- 专业性
- 职业素养
前提
- 见名知意
规范
包
域名倒写,全部小写字母
com.qfedu
类、接口
- 单个单词:首字母大写
多个单词:每个单词的首字母大写
DemoDemoKey
方法、变量
单个单词:首字母小写
多个单词:从第二个单词起,首字母大写
run runQuick
常量
全部大写
多个单词之间用_连接
HOME HOME_NAME
5. java常量
- 概述
- java中不能改变的量
- 分类
- 字面常量
- 自定义常量
- 字面常量
- 字符串常量
- 整数常量
- 小数常量
- 字符常量
- 布尔常量
- null
/*** 常量* @author MACHENIKE**/
public class Demo02 {public static void main(String[] args) {//字符串常量System.out.println("hi");//整数常量System.out.println(123);//小数常量System.out.println(12.3);//布尔常量System.out.println(true);//字符常量System.out.println('A');//nullSystem.out.println(null+"");}
}
6. 数据类型的概述和分类
- 概述
- java是一个强类型语言,每一个数据都有一个明确的数据类型
- 分类
- 基本数据类型
- 引用数据类型
- 基本数据类型
- 整形
- byte 1字节
- short 2字节
- int 4字节
- long 8字节
- 浮点型
- float 4字节
- double 8字节
- 布尔型
- boolean
- 字符型
- char 2字节
- 整形
7. java变量
概述
- 在代码运行过程中,能够发生改变的量
语法
- 数据类型 变量名 = 值;
分类
- 局部变量
- 定义在方法中,又叫方法变量
- 全局变量
- 定义在方法外,又叫对象变量
- 静态变量
- 定义在方法外,有static修饰,又叫类变量
- 局部变量
代码实现
局部变量
public class Demo05_Variable {public static void main(String[] args) {// 数据类型 变量名 = 值;byte num1 = 127;System.out.println(num1);short num2 = 600;System.out.println(num2);int num3 = 100000;System.out.println(num3);long num4 = 1000000000;System.out.println(num4);float num5 = 1.3f;System.out.println(num5);double num6 = 5.6;System.out.println(num6);boolean flag = true;System.out.println(flag);char chr = 'A';System.out.println(chr);String str = "abcd";System.out.println(str);} }
全局变量,静态变量
public class Demo05_Variable02 {static byte num1 = 127;static short num2 = 600;static int num3 = 100000;static long num4 = 1000000000;static float num5 = 1.3f;static double num6 = 5.6;static boolean flag = true;static char chr = 'A';static String str = "abcd";public static void main(String[] args) {System.out.println(num1);System.out.println(num2);System.out.println(num3);System.out.println(num4);System.out.println(num5);System.out.println(num6);System.out.println(flag);System.out.println(chr);System.out.println(str);} }
8. java变量使用的注意事项
作用域
- 同一作用域类不能同时声明一个相同的变量
变量的初始化问题
- 成员变量在声明的没有赋值,则系统会自动赋值
- byte short int long 初值为0
- float double 初值为0.0
- boolean 初值为false
- char 初值为‘’
- 局部变量在声明时没有赋值,系统不会自动赋值
- 成员变量在声明的没有赋值,则系统会自动赋值
一条代码定义多个变量
int n = 1, m = 2, g = 3;
9. 数据类型转换之隐式类型转换
概述
- byte short int char 参与运算会转换成int类型
- 大精度和小精度参与运算会升成大精度
- 小类型和大类型参与运算会升成大类型
public class Demo11_TypeTransfer {public static void main(String[] args) {byte num1 = 1;byte num2 = 2;int numl = num1 + num2;short num3 = 2;short num4 = 5;int numk = num3 + num4;int num5 = 5;int num6 = 7;int numj = num5 + num6;char chr1 = 1;char chr2 = 2;int chr = chr1 + chr2;double num7 = 5.5;float num8 = 3;double numh = num7 + num8;int num9 = 5;long num10 = 6;long numg = num9 + num10;} }
10. 数据类型转换之强制类型转换
概述
- 大精度–>小精度
- 大类型–>小类型
语法
小类型 变量名 = (小类型)值
* 代码```javapublic class Demo11_TypeTransfer {public static void main(String[] args) {byte n = 2;byte m = 3;byte l = (byte)(n + m);}}
11. 字符和字符串参与运算
字符参与运算
- char类型会自动升成int类型,结果参考ASCII码表
- 0–>48 A–>65 a–>97
- char类型会自动升成int类型,结果参考ASCII码表
字符串参与运算
- 任何类型的数据和字符串使用“+”运算时都会被看成字符串,再拼接
System.out.println('a'+1) //输出98 System.out.println("hello"+1) //输出hello1 System.out.println("hello"+('a'+1)) //输出hello98
- 任何类型的数据和字符串使用“+”运算时都会被看成字符串,再拼接
12. 进制的概述
概述
- 进位制,即人们定下的一种进位规定,二进制即逢2进1,八进制即逢8进1,等等
二进制
- 即0,1,逢2进1
八进制
- 二进制表示数字太长,以3位二进制表示1位八进制
十六进制
- 八进制表示数字太长,以4位二进制表示1位十六进制
13. 为什么128GB的硬盘只有119GB
- 分析
- 厂商计算方式
- 以1000作为 b kb mb g之间的进率
- 电脑计算方式
- 以1024作为 b kb mb g之间的进率
- 厂商计算方式
14. 不同进制的表现形式
二进制
- 以0b开头
八进制
- 以0开头
十六进制
- 以0x开头
public class Demo06_scale {public static void main(String[] args) {System.out.println(0b100);System.out.println(0100);System.out.println(0x100);} }
15. 不同进制转十进制
- 在线转换网站
16. 十进制转任意进制
除积倒取余
17. 原码补码反码
概述
- 计算机进行数字运算时使用的是补码
原码
- 就是二进制数本身,只是在前面多了一个符号位
反码
- 正数的反码就是原码,负数的反码就是将原码0变1,1变0,符号位不变
补码
- 正数的补码就是原码,负数的补码就是反码的末尾+1
解释7+(-7)= 0
18. 精度损失
问题说明
2个byte类型的值num1,num2,加和之后进行强转
public class Demo09_AccuracyLoss {public static void main(String[] args) {byte num1 = 66;byte num2 = 70;byte sum = (byte)(num1 + num2);System.out.println(sum);} } //输出结果是-120
为什么两个正数的加和却是一个负数?
计算机内部进行数字加和的时候是以补码的形式进行加和的。66+70=136 即 1000 1000
存中…(img-cJN3AGcq-1593609648405)]
18. 精度损失
问题说明
2个byte类型的值num1,num2,加和之后进行强转
public class Demo09_AccuracyLoss {public static void main(String[] args) {byte num1 = 66;byte num2 = 70;byte sum = (byte)(num1 + num2);System.out.println(sum);} } //输出结果是-120
为什么两个正数的加和却是一个负数?
计算机内部进行数字加和的时候是以补码的形式进行加和的。66+70=136 即 1000 1000
(num1+num2)应该是一个int型的数,int型有4个字节,强转为byte后,损失了3个字节(byte只有1个字节),一个字节是8位,此时1000 1000是在计算机内以补码的形式存在,要将其化为原码再显示出来,此时第一位的1为符号位,先计算出其反码 1000 0111 再计算其原码,1111 1000,再将后面7位转换成十进制,1为符号位,结果即为-120
思维导图
小白学习java第二天相关推荐
- 小白学习Java第二十八天
今日内容 数据库简介 MySQL的安装.卸载与管理 SQL语言(DDL DML) 约束 一. 数据库简介 (一)理解 用于持久化保存数据的管理软件 保存数据的技术: 1. 将数据保 ...
- 小白学习Java第二十九天
今日内容 数据库的导入和导出 DQL 基本查询 条件查询 排序查询 函数 分组查询 分页查询 连接查询 一. 导入导出数据库 1.导出数据库 选中要导出的数据库,鼠标右键备份/导出-->备份数据 ...
- 小白学习Java第二十六天
今日内容 BOM模型,重点定时器 jQuery简介 jQuery使用步骤 jQuery选择器 jQuery事件 jQuery中的循环 一.BOM (一)BOM简介 1.Bom(browser obje ...
- 小白学习Java第二十三天<进入Javaweb>
课程介绍: 今日内容: HTML概述 软件架构 HTML语言介绍 HTML入门案例 HTML常见标签 文本标签 ...
- 小白学习Java技术知识点总结,其实学习Java没那么难
边学习边记录是程序员快速进步的途径,只有你不断累积知识,才能有质的飞跃,不断的coding,累积经验. 第一讲,主要是Java环境变量的配置. 搭建好环境才能干活.要理解什么是编译.什么是运行.编译是 ...
- 什么?你还在花一两万学Java,快来看看小白学习java全路线吧
---------------------------龙珠悟空------------------------- 龙珠悟空一个写故事的程序员,小白学java专栏我会以故事的方式,通过老师讲解同学讨论个 ...
- 学习java第二周——面向对象、堆栈方法区、代码块、抽象类、接口和异常
面向对象 2020年9月7日星期一 概述:面向对象(Object Oriented)是软件开发方法.面向对象的概念和应用已超越了程序设计和软件开发,是一种对现实世界理解和抽象的方法,是计算机编程技术发 ...
- 小白学习java之mybatis第三天
第16节:延迟加载策略 首先说明什么是延迟加载及应用场景.特别要说明mybatis应用延迟加载的前得条件必须是嵌套方式才可以.其次解释使用延迟加载可减少访问数据库的频率,减少系统资源的消耗从而提高my ...
- 小白学习Java必练基础题(一)
1.请实现两个整数变量的交换 int a = 1; int b = 2; //经过交换之后,这里需要大家实现交换的代码 System.out.println(a);//2 System ...
- 小白学习java集合框架(集合Collection)
希望各位能够留下你们美丽的赞和评论谢谢,或者有好的资源帮帮小编提升实力一起努力,奥里给!! 拒绝垃圾视频:超级好的视频,建议从头开始看:https://www.bilibili.com/video/B ...
最新文章
- poj2367拓扑排序模版题
- 【面试】吃透了这些Redis知识点,面试官一定觉得你很NB
- 几本国外著名反演书籍(高清版资源)
- java----DBUtils知识点补充
- PopupMenu控件的使用
- 事业单位的生活是怎么样的?
- 读卡器行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- java-web-j2e学习建议路线
- 二进制补码以及为什么要使用补码
- mysql 行级锁 where_mysql 行级锁的使用以及死锁的预防
- Python远程开关机
- 百度地图LV1.5实践项目开发工具类bmap.util.jsV1.0
- 如何使用idea把自己的项目打包jar包发给别人使用
- 百度云盘搜索引擎微信公证号_全L导演 H265 1080P 双语版@微信公众号edy521
- 如何解决MySQL无法打开之——错误2013:lose connection to MySQL blablabla
- Python中type的意思
- MATLAB常用小trick
- 跨年烟花代码加文案,确定不来看看吗
- 【C++】让函数根据一个以上的对象来决定怎么虚拟
- 写计算机程序在哪个应用写,大家都用什么软件写小说
热门文章
- python编写函数判断奇偶数_python判断奇数
- python打印列表中指定元素的所有下标(5种方法)
- linux命令显示文件内容行号|linux将内容以行号显示出来
- 学计算机投影仪定义,一种计算机信息技术教学用投影仪的制作方法
- 网盘搜索引擎原理大揭秘
- SELECT 1 FROM DUAL中的DUAL的作用
- python提速网站资源_三分钟学会Django缓存,让你的网站提速十倍以上
- 工作日报这样写 大老板也挑不出错
- PECompact 2.79 Beta D by Sonny27
- 在div中加本地html,div加载另一个HTML页面