2017暑假 第一周 学习总结(复习)


2017暑假 学习总结目录:   1   2   3   4


Time:7.3 ~ 7.9

Content:再次认识Java,熟悉环境配置,HelloWorld 基本结构,了解开发工具 eclipse,标识符命名规范,基本数据类型,数据类型之间的转换,运算符及优先级,流程控制 if-else 等。

Declaration:第一周相对比较轻松,本来打算两周做一次总结的,但是感觉一周一小节更有效果,我是根据网上的课程视频进行复习的,本周复习内容比较基础,但是一些细节部分也不能忽略,以下将我本周的复习笔记加以整理。本周总结主要偏重语言规则的内容。

1、什么是计算机

  • 一种能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件和软件所组成。
    硬件:在软件的配合下完成输入、处理、储存、和输出4个操作步骤。根据不同功能可分为5类:
      ① 输出设备(显示器、打印机、音箱等)
      ② 输入设备(鼠标、键盘、摄像头等)
      ③ 中央处理器(CPU)(核心)
      ④ 储存器(内存、硬盘、光盘、U盘以及储存卡等)
      ⑤ 主板
    软件:按照一定顺序组织的计算机数据与指令的集合。软件 = 数据+指令+文档
       分类:系统软件(Windows、Linux等),应用软件(QQ、WPS等)。

2、认识java

  • 三大平台:J2SE、J2EE、J2ME
    J2SE(JavaSE):所有Java技术的基础。
    J2EE:着重于电子商务网站, 手机应用程序的开发。
    J2ME:主要针对嵌入式系统,包括手机、PDA等。

  • 关键词解析:
    跨平台:不依赖于软件系统,也不依赖于硬件环境。
    JVM:Java虚拟机,相当于模拟的计算机(软件+硬件)。
    JDK:Java核心,包含Java的运行环境,Java工具及Java的基础类库 为程序员提供的一个开发工具包。
    JRE:Java的运行环境。
    JDK包含JRE,JRE包含JVM

3、安装java环境(可以戳此链接下载JDK

  • JDK版本:jdk6、jdk7、jdk8

  • jdk和jre环境安装步骤:

  • ① 双击安装包,直接傻瓜式地安装(下一步 下一步 ...完成)

  • ② 更改路径:
      1. 如果更改路径的话 保证两个jdk和jre环境在同一个路径
      2. 不要出现中文或者空格

  • ③ 环境配置:
    JAVA_HOME:jdk安装路径
    PATH:JDK下的\bin目录,为了让控制台在任意的目录下都可以找到java的开发工具
    CLASSPATH:设置class文件所在的路径信息
    注意:1. “.”代表当前目录“;”代表分割号
       2. 从jdk6开始可以不配置

  • ④ 配置环境详细步骤:
    桌面-计算机-右击属性-高级系统设置-高级-环境变量
    用户变量:只能对当前登录的用户有效
    系统变量:所有登录电脑用户均有效
    JAVA_HOME:新建
    PATH:编辑 放置到最后 加分号 JDK下的\bin目录
    path:方式1:绝对路径 C:\Program Files (x86)\Java\jdk1.8.0_101\bin
      方式2:相对路径 %JAVA_HOME%\bin
    注意:1. 环境变量名不区分大小写
       2. 多个环境之间用分号(英文状态下)分割开即可

4、java环境的测试

  • 开始 --> cmd回车 --> 进入dos界面 --> 输入相关命令
    javac:编译环境
    java:运行环境
    java -version:输出打印java的版本信息

  • 测试过程中出现:XXX不是内部或外部指令
    解决方法:1、检查java环境安装没有
        2、环境配置是否正确,如果不正确更改正确后需要重启dos
        3、配置是否出现了中文的分号或者逗号等

5、第一个java程序

  • 如何显示文件后缀名:
    任意打开一个盘 --> 组织 --> 文件夹或搜索选项 --> 查看 --> 去掉隐藏已知文件扩展名前的对勾
    新建文件记事本,把后缀名改成.java文件

  • 结构体:
    1062725-20170711160452259-494940427.png

  • 注意点:
    1、加入适当的空格或者换行,优化代码
    2、java程序如果进行更改必须进行重新编译
    3、java的类名和文件名保持一致
    4、java中严格区分大小写
    5、println和print,如果加ln会进行换行,加之后对当前行进行处理
    6、java每句结束之后需要加英文状态下的分号
    7、java类中,System首字母大写 String 首字母大写
    8、java文件中可以有多个类,但是只能有一个public修饰的类,并且public修饰的类
    9、要和文件名保持一致,不能有重名类信息

  • java 代码编译执行过程:
    先进入dos
    1、切换盘符 d: D:\Demo.java
    2、javac 类名.java 作用:编译成 类名.java类名.class
    3、java 类名 作用:打印内容到控制台

6、eclipse开发工具应用(戳此链接下载

  • 开发工具,是一个开放源代码的、基于Java的可拓展开发平台。
    必须先安装jdk,jdk1.8最合适
    安装版:下一步
    免安装:解压后可以使用(英文版)
    汉化包(不建议)

  • 目的:提高代码开发效率
    (说明:eclipse完全免费,和IDEA相比,虽然功能有些欠缺,但是感觉更精简,更适合练习基础语法)

7、java关键字

  • java中有特殊意义的单词就是java的关键字
    关键字不能作为标识符使用

  • 标识符和保留字有51+2 个(48个关键字,3个字面量,2个保留字)
    1062725-20170711161424650-110674584.png
    其中两个保留字是goto和const,其他关键字如:class (类关键字)、abstract(修饰符关键字)、void(返回类型关键字)等。

  • 注意:① 所有的关键字小写;
       ② true、false 和 null 等都是Java关键字,属于字面量;
       ③ goto 和 const 虽然从未使用,但也作被为Java关键字保留;

  • 保留字:有特殊含义的标识符,后续有可能发展成关键字(goto和const)

8、java标识符

  • 在java中为类、方法、变量、包等起的名字叫做标识符。

  • 组成:字母(a-z,A-Z)、数字 、下划线、$ 组成,数字不能为开头。还可以包含其他符号,如¥、π、ω等,支持中文,但不建议。
    规范:包名:所有的字母全小写 eg:com
    类名和接口名:所有的单词首字母大写 eg:TestDemo
    方法名和变量名:驼峰式命名规则 所有的单词除了第一个单词首字母小写,其他单词首字母大写 eg:testDemo
    常量名称:所有的单词都大写,单词之间用下划线分割 eg:TEST_DEMO

  • 注意点:
    1、关键字不能为标识符
    2、java中严格区分大小写
    3、标识符长度不限制,可以任意长
    4、由字母(a-z,A-Z)、数字 、下划线、$ 组成,数字不能为开头
    5、java中文、日文都可以作为标识符,但是不建议使用
    6、所有的标识符建议做到见名知意

9、java 注释

  • 目的:提高代码的可读性

  • java注释主要种类:
    1、单行注释:以//开始对当前行起作用 ;
    2、多行注释:以/开始以/结束,对当前范围内的代码说明起作用,可以用在单行上,但不能嵌套使用;
    3、文档注释:主要用在类和方法上 ,也可以用在单行或者多行上,但不能嵌套使用;

  • 生成对应的api文档方式(仅作了解):
    先进入dos窗口
    1、切换盘符
    2、javadoc -d 放置到的文件名名称 类名.java (这是一个新技能)

10、包

  • 包:相当于文件夹,避免重复的类
    作用:管理文件信息

  • 如何编译带包的java类信息:
    1、切换盘符到具体类所在的路径下
    2、javac -d . 类名.java
    3、java 包名.类名 执行java代码输出打印结果

11、进制之间的转换

  • 进制:一种记数方式,用有限的符号或者数字代替无限的内容
    二进制:0-1
    八进制:0-7
    十进制:0-9
    十六进制:0-9 A,B,C,D,E,F
    10 ,11,12,13,14,15

  • 进制转换:
    十进制转二进制:使用十进制不断除以2,直到商为0,从为止下到上取余数得到的结果就是二进制
    二进制转十进制:使用二进制每一位乘以2的n次方,n从0开始,然后相加求和,得到的结果即为十进制

12、变量 常量

  • 变量定义:用于存储可变数据的容器。

  • 三个要素:1、变量必须有大小和数据类型
        2、必须有名字
        3、存储为一个可变的值信息

  • 变量:本身为一个容器,主要存储内容是可变的
    常量:在程序执行过程中不会发生变化的信息
    定义变量的结构体:数据类型 变量名=值;

  • 特点:
    1、必须有大小
    2、存的是一个可变的数据
    3、变量必须有名字

  • 数据类型:基本数据类型:int i = 5;
        引用数据类型:Integer j = new Integer(10);

13、java基本数据类型的解析

  • 基本数据类型(内置数据类型)
  • 4类八种:
    整数类型:int byte short long 默认int
    浮点数类型:float double 默认double 小数
    布尔类型:boolean
    字符类型:char
        1、字面值赋值
        2、编码赋值(ASCII 码)
        3、unicode赋值

  • 注意点:
    char类型字面值赋值,只能是单引号括上,里面是一个字母或者汉字。

  • 引用数据类型
    包含String、数组等。
    定义:需要用双引号括上,里面可以放任意多的字母或者汉字。
    eg:String name="zhangsan";

  • 注意点:
    1、定义浮点数float 值后面加大小写的F
    2、double类型后缀加大小写D,或者不加都可以
    3、long类型后缀加L,建议加大写

14、基本数据类型格式

  • 基本格式:数据类型 变量名=值;
    数据类型 变量名1=值,变量名2=值2;
    数据类型 变量名1,变量名2;
    数据类型 变量名1=值;
    数据类型 变量名2=值;

  • 局部变量:在方法内定义的变量,必须赋值后才能使用。

15、数据类型之间的转换

  • 1)自动转换(隐式转换):由小数据到大数据直接的转换叫做自动转换。
    eg :byte - int - long - float - double

  • 注意点:
    1、小或者大指的是数据范围的大小
    2、boolean 类型不能和其他类型进行转换
    关于数据范围可参考下图:
    1062725-20170711160543353-2074649425.png
    1062725-20170711160550587-235031061.png

  • 2)强制转换(显式转换):由大数据类型到小数据类型的转换,需要强制转换
    格式:小数据类型 变量名=(小数据类型)变量名;

  • 注意点:
    1、大数据类型对应的值信息要在小数据类型表示的范围内
    2、由浮点数转整数,数据精度有可能损失
    3、byte char short类型进行运算的时候需要强转,因为默认的是int类型,转成int类型后进行计算
    4、两个不同数据类型进行计算的时候,结果取决于大的数据类型

16、运算符

  • 1> 算术运算符:
+、-、*、/、%、++、--
  • 在java中:
    "+"表示:1、表示一个正数 ,这时候+可以省略不写
        2、连接符,主要用于和字符串拼接使用
        3、算术运算符,主要表示两个数或者多个数字进行相加运算,求和

  • "-"表示:1、表示一个负数
        2、表示算术运算符中求差运算

  • "%"表示:求余数,求模
    注意:在java中进行求余数的时候结果的正负取决于被除数,与除数无关。

  • "++"、"--"
    单目运算符(也叫自增自减运算符),只有一个操作数。
    ++:相当于每次加上1
    ++在前:先计算,后使用
    ++在后:先使用后计算,下次使用发生变化

  • --:相当于每次操作数减去1
    (其他用法类似++)

  • 2> 赋值运算符:
=、+=、-+、*=、/=、%=

=: 赋值
+=:运算的时候赋值 a+=b 等同于 a=a+b
-=: a-=b 等同于a=a-b

  • 3> 比较运算符:
    主要用在判断语句中,结果只能为boolean类型的值,即只能为 true 或者 false。
    分类:
==、!=、>、<、>= <=
  • =和==的区别:
    =:赋值运算符,值信息
    ==:比较运算符,得出 boolean 值
    !=:不等于

  • 4> 逻辑运算符:boolean
&&、||、!

&&:and(并且)多个条件都成立时才成立
||:or(或者)只要有一个条件成立就成立
!:取反 true 为 false ,false 为 true

  • 5> 位运算符:
    主要用于二进制运算
&、|、^、~

&:全1为1,否则为0
|:有1为1,否则为0
^:相同为0,否则为1
~:1为0,0为1

  • 注意:
    &和&&区别:结果相同
    不同点:&&:短路与,一旦左边的条件不满足,直接返回结果
       &:位与,执行完判断后返回结果
       &&效率相对高于&,前提是第一个条件不满足
    |和||区别:和上面类似
    ||:第一条件满足,直接返回结果

  • 6> 移位运算符:
    主要用于二进制运算
<<、>>、>>>

<<:左移 左移1位相当于乘以2,左移n位,相当于乘以2的n次方
>>:右移 右移1位相当于除以2,右移n位,相当于除以2的n次方
>>>:无符号右移
当是正数的时候结果一样
当是负数的时候,符号位统一补0

  • 7> 三元运算符
    三元运算符(XXX ? XXX :XXX)可以用来代替if-else结构。但它最终会生成一个值,表达式为:
布尔表达式?表达式1:表达达2;

若布尔表达式为真(true),就计算表达式1;否则计算表达式2。

  • 注意点:三元表达式可以嵌套使用
    缺点:结构复杂,不建议使用

17、运算符优先级:

1062725-20170711160623150-1682725309.png

18、流程控制

  1. 顺序结构
  2. 选择结构(分支结构)
  3. 循环结构
  • 流程控制:
    1、顺序结构:从上到下依次执行
    2、选择结构(分支结构):根据不同的判断结构进入到不同的代码段
    ① if else
    ② switch case

  • if相关的几种结构体:
    ① 主要用在一种情况的输出:
if (判断语句) {
   符合条件输出的结果
}

② 主要用在两种情况的输出(类似于三元运算符):

if (判断表达式) {
   符合条件输出的代码
} else {
   不符合条件输出的代码
}

③ 主要用在多种情况的输出:

if (条件表达式1) {
   满足条件1的输出内容
} else if (条件表达式2) {
   满足条件2的输出内容
} else if (条件表达式3) {
   满足条件3的输出内容
} ... { ...
} else {
   都不满足的输出内容
}
  • 注意点:
    1、if可以单独使用,else不能单独使用
    2、if()不能有分号
    3、if或者else只有一句输出的时候可以省略大括号,如果多条输出不能省略
    4、if或者else中可以继续嵌套if或者else语句,嵌套次数不限制

  • 3、循环结构:
    ① while 语句
    ② for 语句
    ③ do - while

感想:

  周筠老师写过一篇文章:保持较低的动力,每天进步一点点
  在我跟着网上视频进行学习的时候,进了对应的一个学习群,我发现一起学习 Java 的人有的是大学生,有的是中学生,但是大部分人已经处于工作状态。他们经常会遇到一些加班或者感情上的问题,但是他们每天依然在挤时间学习 Java。对于他们来说,每天学习的时间必定比我们少,但是仍然有一部分人能够坚持,每天按时完成视频中布置的作业,按时总结笔记;还有些大学生,Java 基础比我好很多,但是仍然在坚持弥补基础。这样看来,我有什么理由不去和他们一起坚持呢。的确,第一周的学习状态比较好,在群里也算是掌握情况、作业完成情况比较好的一类人,我会继续保持这种低动力,每周坚持做总结,必定会有意外的收获!
  本周学习内容比较基础,没有遇到逻辑比较复杂的程序,所以就不贴代码了。我在练习基础语法时,也在尝试着用英文写注释,这是一个耗时但是值得坚持的好习惯。
  之前因为航班取消而在学校苦苦等待的我,今天再次踏上了回家的路途。。。φ(゜▽゜*)♪

2017.7.11

转载于:https://www.cnblogs.com/super925/p/7147431.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值