20145235 学号 《Java程序设计》第2周学习总结
教材学习内容总结
本周学习教材第三章,本章主要讲述了java语言中的一些基础语法,java是个支持面向对象的程序语言,但在正式进入面向对象支持语法的探讨前,对于类型、变量、运算符、流程控制等,这些各种程序语言都会有的基本语法元素,还是要有一定的基础。虽然各种程序语言都有这些基本语法元素,但千万别因此而轻忽它们,因为各种程序语言都有其诞生的宗旨与演化过程,对这些基本语法元素,也就会有其独有的特性。
类型
java分为:基本类型和类类型两大类型系统,其中类类型也称为参考类型。
基本类型:在使用时,得考虑一下数据用多少内存长度来存比较经济,利用程序语法告诉JVM,然后由JVM自动为你在内存中配置与管理。
基本类型分为:整数、字节、浮点数、字符与布尔。
整数:可分为short整数(占2字节),int整数(占4字节),long整数(占8字节)三种,不同长度的整数,可储存的整数范围也不同。long整数占的内存长度比int整数来得多,可表示的整数范围也就比int大。例如,int类型的十进制2其实是以000000000 00000000 00000000 00000000 00000010形式存储在内存中。所占字节越多的整数类型可表示的整数范围越大。
字节:byte类型顾名思义,长度就是一字节,在需要逐字节处理数据时(如图像处理、编码处理等)就会使用byte类型,byte也可以用来表示整数,可表示的整数范围是-128~127。
浮点数:主要用来储存小数数值,可分为float浮点数(占4字节),double浮点数(占8字节)。double浮点数使用的内存空间比float浮点数来得多,可表示的精确度也比较大。
字符:char类型用来储存‘A’、‘B’、‘林’等字符符号。每个字符类型占2字节,汉字字符与英文字符在java中同样都是双字节储存。
布尔:boolean类型可表示true和false,分别代表逻辑的“真”与“假”。在java中不用在意boolean类型的长度,因为你也无法将boolean类型与其他类型做运算。
备注:每种类型占有的内存长度不同,可储存的数值范围也就不同。例如,int类型的内存空间是四字节,所以可储存的整数范围为-2147483648~2147483647,如果储存值超过了类型范围称为溢值,会造成程序不可预期的后果,而且我们不用记忆各种类型可储存的数值范围,可以通过API来实现。System.out.printf()是标准API,意思是对输出文字做格式化后再显示在文本模式中,一些常用的格式控制符号要熟记!(书上有表格列出) 类类型:详见第四章
变量
变量: 内存中的一个存储区域,该区域有自己的名称(变量名)和类型(数据类型),该区域的数据可以在同一类型范围内不断变化
字符型(char)
布尔型(boolean)
整数类型(byte, short, int, long)
浮点类型(float, double)
使用前要声明变量类型,即使用上文所提到过的short,byte,char等关键词来声明
变量在命名时有一些规则,它不可以使用数字作为开头,不可使用特殊字符,而且变量名称不可以与java的关键词同名,常用“驼峰式”命名法,如“int ageOfStudent”。目前为止,我们的程序范例都是撰写在main()中,在方法中声明的变量称为局部变量。
不可以声明局部变量后未指定任何值给它之前就使用变量。在调用变量之前,要对变量初始化,即给变量赋值。ps:如果,在变量赋值后,不打算改变可以加上final,例如final double PI=3.1415926;来防止自己或他人不经意修改。
tips:在表示数字常量时,0b表示二进制数,0x表示十六进制数,如int a=0xC,在表示较长的数字时,使用下划线可以使表达更加清楚。如int b=0b1010 _1010 _1010。
运算符
运算符
算术运算符
赋值运算符:= , +=, -=, *=, /=, %=
比较运算符
逻辑运算符
位运算符:
<< 左移
右移
无符号右移
& 与运算
| 或运算
^异或运算
~ 反码
类型转换
整数中默认类型为int型;小数中默认类型为double型;如果表达式中包括不同类型数值,则运算时以长度最长的类型为主,其他数值自动提升类型。如果想控制运算结果的类型,就要进行强制类型转换
流程控制
if...else条件式、switch条件式、for循环、while循环、break、continue
我觉得这一部分在C语言中已经差不多掌握了,在Java学习中不能因为学过就不重视,而要结合java语言更好的掌握下来,多动手敲代码。
教材学习中的问题和解决过程
操作题1
操作题2
代码调试中的问题和解决过程
xxx
xxx
其他(感悟、思考等,可选)
学Java,真的不容易啊,视频就看了两天,感觉整个世界就剩Java!但收获还是蛮多的,很充实。
学习进度条
代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90
参考资料
Java学习笔记(第8版)
《Java学习笔记(第8版)》学习指导
20145235 学号 《Java程序设计》第2周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 学号20145303 《Java程序设计》第一周学习总结
学号20145303 <Java程序设计>第一周学习总结 教材学习内容总结 *dos命令行: dir:列出当前目录下的文件及文件名 md:创建目录 rd:删除目录.为空时文件夹(文件夹为空 ...
- 学号20145322 《Java程序设计》第一周学习总结
学号20145322 <Java程序设计>第一周学习总结 教材学习内容总结 Java诞生于Sun公司,于1998年12月4日发布J2SE,约以两年为一周期推出重大版本更新. 2010年Or ...
- 201521123061 《Java程序设计》第九周学习总结
201521123061 <Java程序设计>第九周学习总结 1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1 ...
- 201521123038 《Java程序设计》 第九周学习总结
201521123038 <Java程序设计> 第九周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 ...
- 201521123045 <java程序设计>第11周学习总结
201521123045 <java程序设计>第11周学习总结 1. 本周学习总结 2. 书面作业 2. 书面作业 Q1.1.互斥访问与同步访问完成题集4-4(互斥访问)与4-5(同步访问 ...
- 20175313 张黎仙《Java程序设计》第九周学习总结
目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...
- 20175227张雪莹 2018-2019-2 《Java程序设计》第九周学习总结
20175227张雪莹 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十一章 JDBC数据库操作 MySQL数据库管理系统 下载安装MySQL 若下载的是 ...
- 2018-2019-3《Java程序设计》第二周学习总结
学号20175329 2018-2019-3<Java程序设计>第二周学习总结 教材学习内容总结 第二三章与我们所学习的C语言有很多的相似点,在这里我想主要就以我所学习的效果来讨 ...
- # 20175329 2018-2019-2 《Java程序设计》 第二周学习总结
学号 2018-2019-3<Java程序设计>第二周学习总结 教材学习内容总结 第二三章与我们所学习的C语言有很多的相似点,在这里我想主要就以我所学习的效果来讨论一下JAVA与 ...
随机推荐
- 移除IIS默认的响应头
在IIS+ASP.NET的运行环境,默认情况下会输出以下的响应头(Response Headers): 那如何移除这些响应头呢?下面我们来一个一个移除. 1. 移除Server 借助IIS URL R ...
- linux tricks 之 BUILD_BUG_ON_ZERO.
------------------------------------------- 本文系作者原创, 欢迎大家转载! 转载请注明出处:netwalker.blog.chinaunix.net -- ...
- Java Hour 37 Weather ( 10 )
有句名言,叫做10000小时成为某一个领域的专家.姑且不辩论这句话是否正确,让我们到达10000小时的时候再回头来看吧. Hour 36 Weather 从失败的地方爬起来 在jsp 中,使用EL 表 ...
- loj 1018(状压dp+记忆化搜索)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=25844 思路:首先预处理出点在同一直线上的所有的点集状态(dp[i ...
- Mongoose Schemas中定义日期以及timestamps选项的妙用
本文转自:http://www.cnblogs.com/jaxu/p/5595451.html 在Node.js中使用MongoDB少不了Mongoose.假设有如下Mongoose Schemas的 ...
- 电赛总结(四)——波形发生芯片总结之AD9851
一.特性参数 1.180 MHz时钟速率参考时钟具有6倍倍乘器.芯片具有高性能10位DAC和高速滞后比较器 2.+2.7 V至+5.25 V单电源工作 3.正常输出工作频率范围为 0-72MHz ; ...
- 电赛总结(二)——AD芯片总结之高速AD9224
一.特性参数 1.12位高速AD 2.高达40MSPS的高速AD芯片 3.噪声小 二.芯片管脚图 三.管脚功能说明 管脚名称 功能 CLK 参考时钟输入端 BIT12-1 数据输出端(1是低位,12是 ...
- Servlet跳转方式
servlet之间的跳转,有两种方式: 1.redirect方式,是新的请求,数据不相同 2.forward方式是同一个请求,数据相同
- 【HTML5】Canvas画布
什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以 ...
- mysql优化连接数防止访问量过高的方法
这篇文章主要介绍了mysql优化连接数防止访问量过高的方法,需要的朋友可以参考下 很多开发人员都会遇见”MySQL: ERROR 1040: Too many connections”的异常情况,造成 ...