java基础篇(传志播客视频)

这是我的一个高中同学在传志培训后发给我的学习视频,包含基础和提升两个阶段。此为基础篇。因为是抽空的时候看的,所有进度可能会有点慢……
基础篇视频链接:链接:http://pan.baidu.com/s/1i5839T7 密码:bimd
提升篇视频链接:链接:http://pan.baidu.com/s/1boG7hXt 密码:azlh
平时的练习代码存放在github仓库中:https://github.com/956159241/JavaBasicStudyNotesFromItcase
使用工具:eclipse neon.3

第一章 JAVA概述

1.1 Java语言的特点

重点有两个开源跨平台

java基础篇(传志播客视频)_第1张图片
跨平台图解

java基础篇(传志播客视频)_第2张图片
跨平台图解

java基础篇(传志播客视频)_第3张图片
运行原理

1.2 JRE 与JDK

JRE(Java Runtime Environment Java运行环境)
JDK(Java Development Kit Java开发工具包)
简单而言:使用JDK开发完成的java程序,交给JRE去运行。

1.3 JDK,JRE,JVM的作用及关系(掌握)

  • 作用

  • JVM:保证Java语言跨平台

  • JRE:Java程序的运行环境

  • JDK:Java程序的开发环境

  • 关系

  • JDK:JRE+工具

  • JRE:JVM+类库
    相关连接:
    JDK的安装与配置

1.4 第一个小程序

java基础篇(传志播客视频)_第4张图片

奇怪,我在创建的时候,为什么有个小问号呢?百度说是未进行版本控制。


java基础篇(传志播客视频)_第5张图片

把项目上传一下再看看……

java基础篇(传志播客视频)_第6张图片

通过上图可以看到,还未上传结束,可是问号已经没有了, 也就是说,提交一下,那个问号就没有了。

第二章 Java基础语法

2.1 关键字

2.1.1 特点

组成关键字的字母全部小写
注意:goto和const作为保留字存在,目前并不使用

java基础篇(传志播客视频)_第7张图片
java关键字

java基础篇(传志播客视频)_第8张图片
java关键字

2.2 标识符

2.2.1 组成规则

数字字母下划线,不以数字开头(还有其他可以使用,例如$等)。
注意:1.不能是关键字;2.区分大小写。

2.2.2 命名规则
  • 包(其实就是文件夹,用于解决相同类名问题)
    全部小写
    单级包:小写
    举例:zzh,com
    多级包:小写,并用.隔开
    举例:com.iotzzh,com.baidu
  • 类或者接口
    一个单词:首字母大写
    举例:Student,Demo
    多个单词:每个单词首字母大写
    举例:HelloWorld,StudentName
  • 方法和变量
    一个单词:首字母小写
    举例:name,main
    多个单词:从第二个单词开始,每个单词首字母大写
    举例:studentAge,showAllNames()
  • 常量
    全部大写
    一个单词:大写
    举例:PI
    多个单词:大写,并用_隔开
    举例:STUDENT_MAX_AGE
2.2.2 注释
  • 单行注释
    格式: //注释文字
  • 多行注释
    格式: /* 注释文字 */
  • 文档注释
    格式:/** 注释文字 */
    注意:初学者编写程序可以养成习惯:先写注释再写代码。

2.3 数据类型

java基础篇(传志播客视频)_第9张图片
数据类型

java基础篇(传志播客视频)_第10张图片
类型所占字节

使用变量注意事项:

  • 作用域
    变量定义在哪一级大括号中,哪个大括号的范围就是这个变量的作用域。相同的作用域中不能定义两个同名变量。
  • 初始化值
    没有初始化值不能直接使用
  • 在一行上建议只定义一个变量
    可以定义多个,但是不建议

注意事项:

  1. boolean类型不能转换为其他的数据类型
  2. 默认转换
    byte,short,char—int—long—float+—double(byte,short,char相互之间补转换,他们参与运算首先转换为int类型)

3.强制类型转换
目标类型 变量名=(目标类型)(被转换的数据);

2.4 运算符

java基础篇(传志播客视频)_第11张图片
运算符

java基础篇(传志播客视频)_第12张图片
逻辑运算符

java基础篇(传志播客视频)_第13张图片
位运算符

面试题1:

1.请用最有效率的方式写出计算2乘以8的结果?
用移位运算 int a=2<<3;
2的二进制是10 在32位存储器里面是0000 0000 0000 0010
左移三位后变成 0000 0000 0001 0000 也就是16

2.请自己实现两个整数变量的交换
//方式1:借用第三方变量
int c;c=a;a=b;b=c;
//方式2:使用位异或实现
a=ab;b=ab;a=a^b;
//方式3:使用a和b的和相减
a=a+b;b=a-b;a=a-b;
//方式4:一句话搞定
b=(a+b)-(a=b);

2.5 三目运算符

示例:z = (x>y)?x:y;//z变量存储的就是两个数的大数。

2.6 键盘录入方式

  • 导包(位置放到class定义的上面)
    import java.util.Scanner;
  • 创建对象
    Scanner sc = new Scanner(System.in);
  • 接收数据
    int x = sc.nextInt();

2.7 流程控制语句

分类:

  • 顺序结构
  • 选择结构
  • 循环结构
    关键字提醒:
    if,else,switch,for,while,foreach,break,continue,return。
    java基础篇(传志播客视频)_第14张图片
    注意break和default

    写程序优先考虑for循环,再考虑while循环,最后考虑do…while循环。

2.8 常用字符与ASCII代码对照表

java基础篇(传志播客视频)_第15张图片

2.9 运算符优先级

java基础篇(传志播客视频)_第16张图片
注意:

1.byte,short在定义的时候,他们接收的其实是一个int类型的值。
这个是自己做了一个数据检测的,如果不再它们的范围内,就报错。

2.Java语言中的字符char可以存储一个中文汉字吗?为什么呢?
可以。因为java语言中的字符占用两个字节。
Java语言采用的是Unicode编码。

2.10 方法

简单的说:方法就是完成特定功能的代码块

修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
函数体;
return 返回值;
}

2.11 数组

数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。
  数组既可以存储基本数据类型,也可以存储引用数据类型。

数组的定义格式
格式1:数据类型[] 数组名;
格式2:数据类型 数组名[];
举例:
int[] arr = new int[3];

你可能感兴趣的:(java基础篇(传志播客视频))