java基础——Day01--03

//Java的学习需要持之以恒的积累,虽然我是有基础的但是我还是选择从最基础的学起,加深自己的理解//

Day 02

一、计算机的诞生和发展(了解)

二、冯诺依曼(了解)

三、艾伦*图灵(了解)

四、计算机基础知识(了解)

4.1 计算机

  • 电脑

4.2 硬件

  • 电脑中的电子元件组成的硬件

4.3 软件

  • 数据和指令的集合
  • 按照一定的顺序执行,完成指定的功能

4.4 系统软件

  • 操作系统
    • Windows
    • MacOS
    • Linux
    • Android
    • IOS
    • BlackBerry
    • 塞班
    • WPhone

4.5 应用软件

  • QQ
  • 微信
  • 抖音
  • … …

4.6 软件开发

  • 编写应用程序

五、常用DOS指令(熟练)

  • 磁盘操作命令
  • Windows系统出现之前使用的操作电脑的指令
  • 必须在命令提示符窗口中运行
  • 找20个DOS指令演示
    • 最好不涉及删除的操作
    • 不涉及操作系统文件的操作

六、Java语言概述

6.1 基本情况

  • 1995年
  • 詹姆斯*高斯林
  • Sun ===》Oracle–甲骨文
  • 最新版是jdk14
  • 使用人数最多的版本jdk1.8

6.2 下载(掌握)

  • 官网下载jdk
    • JDK 1.8
    • jdk
    • java development Kit
    • java开发工具包
  • https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

6.3 卸载JDK

  • 程序==》JDK1.8==》卸载

6.4 安装JDK(掌握)

  • 双击运行
  • 选择安装位置
    • 不能出现中文、空格、横线的符号
  • 不安装JRE
    • java runtime environment
  • javac.exe
    • 编译我们书写的Java代码,生成,class文件–字节码文件
  • java.exe
    • 运行字节码文件

七、环境变量(重点掌握)

  • 问什么配置环境变量

    • 我想在任意位置都能运行java.exe和javac.exe
    • 需要把程序所处的位置告诉系统
    • 在系统设置的环境变量选项中添加程序的位置即可

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7D1GmYxt-1596071225492)(环境变量配置.png)]

八、HelloWorld(掌握)

8.1 创建java文件

  • Java文件
    • 以.java为后缀名的文件成为java文件
  • 创建一个任意类型的文件,把文件的后缀名修改为.java

8.3 编写Hello World代码

** 掌握 **
class HelloWorld{
	public static void main(String[] args){
		System.out.println("Hello World!");
	}
}

** 了解 **

class

​ java中的一个关键字,声明一个java中的类

HelloWorld

​ 这个类的名字,一般要求和java文件的名字保持完全一致

public

​ java中的一个关键字,访问权限修饰符,第十天会讲

static

​ java中的一个关键字,表示这个方法是静态的方法,第十天会讲

void

​ java中的一个关键字,表示方法执行结束后返回的内容是空的,第七天会讲

main

​ 不是java中的一个关键字,是一个方法的名字,是整个程序的入口,第七天会讲

(String[] args)

​ main方法的参数列表,main方法执行的时候可能需要操作一些数据,第七天会讲

System.out.println(“Hello World!”);

​ main方法中具体执行的内容

九、Hello World运行原理(掌握)

  • 我们书写的代码和平时是写的文字、文章使用的是相同的字母、符号
  • 计算机是不能直接识别、运行这个内容的
  • 需要把我们能直接看懂的java文件中的内容进行转换,转换成计算机能看懂、能运行的文件
  • 计算机能识别并运行.class–字节码文件,可以使用JDK中提供的javac.exe执行进行操作,这种操作成为编译
  • javac.exe编译java文件会生成字节码.class文件,JDK中提供java.exe就可以运行这个文件并产生结果啦

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KNwu7tXb-1596071225503)(java代码的编译和运行.png)]

十、Java编码规范(熟悉)

  • 生成的字节码文件名字和类名是一样的
  • 如果类名被public修饰了,那么文件名需要和类名保持一致
    • 如果类名没有被public修饰,类名和文件名可以不一样
  • 一个文件中能不能存在多个类
    • 会编译出多个字节码文件,这个字节码文件和类名一样
    • 但是只能有一个类是被public修饰的,而且还要和文件名一致
  • 类名的规范
    • 合法的标识符
    • 不能关键字重名
    • 命名符合大驼峰命名法
  • 多个层级的代码之间要使用制表符(tab)键进行格式化

十一、标识符(熟悉)

  • 给类、方法、变量命名的一个字符串
  • 组成
    • 字母
    • 数字
    • _
    • $
  • 命名规则
      • 大驼峰命名法
        • HelloWorld
        • MyShop
    • 方法、变量
      • 小驼峰命名法
        • showInfo
        • getAge
        • setName
    • 常量
      • 全部字母大写,多个单词使用下划线连接
        • USERNAME
        • PASSWORD
        • MATH_PI
      • 字母全部小写,公司名字反过来书写
        • com.qf.shop.XXX

十二、注释(熟悉)

12.1 定义

  • 标注、解释

12.2 注释分类

  • 单行注释
    • 注释一行代码
    • // 单行注释的内容
  • 多行注释
    • /* 多行注释的内容 */
  • 文档注释
    • /** 文档注释的内容 */

Day03

一、变量(掌握)

1.1 定义

  • 内存中开辟的一片空间,需要执行数据的类型

1.2 定义变量

数据类型 变量名称 = 变量值;

int num = 99;

============

int num;

… …

num = 99;

==============

int a=10,b=20,c;

二、数据类型(掌握)

  • 整型
    • 字节
      • byte
    • 短整型
      • short
    • 整型
      • int
    • 长整型
      • long
  • 浮点型
    • 单精度
      • float
    • 双精度
      • double
  • 字符型
    • char
  • 布尔型
    • boolean
类型typesizeround
字节型byte1
短整型short2
整型int4
长整型long8
单精度float4
双精度double8
字符型char2
布尔型boolean1
class Demo03 {
	public static void main(String[] args) {
		/**
		 * 
		 java基本数据类型
			 整数
				字节型	byte	1	-128--127		-2^7--2^7-1
				短整型	short	2	-32768--32767	-2^15--2^15-1
				整型	int		4	-2^31  -- 2^31-1
				长整型	long	8	-2^63---2^63-1

			 小数--浮点型
				单精度	float	4
				双精度	double	8

			 字符型
				char			2
			 布尔型
				boolean			1
		  引用数据类型
			String
			System
			String[]
			Object
		 * 
		 */

		byte b = -110;
		System.out.println("byte b = " + b);

		short s = 32767;
		System.out.println("short s = " + s);

		int i = 2147483647;
		System.out.println("int i = " + i);

		long l = 21474836470L;
		System.out.println("long l = " + l);

		double d = 3.141592353589793;
		System.out.println("double d = " + d);
		
		// java中的小数默认的类型是double,定义float类型变量的时候,需要在值的后面加上F
		float f = 3.141592353589793F;
		System.out.println("float f = " + f);
	
		// char类型数据的值必须是一个字符,不能多也不能少
		char c = '\'';
		System.out.println("char c = " + c);

		boolean bb = true;
		System.out.println("boolean bb = " + bb);
	}
}

三、ASCII(了解)

3.1 定义

  • 美国标准信息交换码
  • 定义了128个基本的字符

3.2 Unicode

  • 在ASCII码表的而基础上进行了扩展,包含了各国的基本字符
  • 被称为万国码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nAJzc1XL-1596071259730)(e850352ac65c103880a07b53bc119313b17e8941.png)]

四、转义字符(了解)

4.1 定义

  • 转变字符原有的含义
  • \字符
转义字符含义
\t制表符tab
\n换行newLine
\\斜线
\"单个双引号

五、数据类型转换(熟悉)

5.1 自动类型转换

  • 向上转型
  • 范围小的转换成范围大的
class Demo06 {
	public static void main(String[] args) {
		// 定义变量b,赋值110
		byte b = 110;

		// 定义变量c,赋值变量b,执行的占用2个字节的b中的110
		short c = b;
		System.out.println("short c = " + c);

		short cc = 7985;
		byte bb = (byte)cc;
		// 0000 0000
		// 0000 0000 0000 0000
		// 0011 0001
		System.out.println("byte bb = " + bb);
	}
}

5.2 强制类型转换

  • 向下转型
  • 范围大的转换成范围小的
class Demo07 {
	public static void main(String[] args) {
		// 强转无损失
		int i = 110;
		byte b = (byte)i;
		System.out.println("byte b = " + b);

		// 强转有损失
		int ii = 7985;
		byte bb = (byte)ii;
		System.out.println("byte bb = " + bb);

		// 小数转整数
		double d = 3.9;
		int id = (int)d;
		System.out.println("int id = " + id);

		// 字符和数字转换
		int ic = 65;
		char c = (char)ic;
		System.out.println("char c = " + c);
	}
}

六、算术运算符

名称符号案例
+a+b
-a-b
×a×b
/a/b
取余数%a%b
自增++a++
自减a–
class Demo08 {
	public static void main(String[] args) {
		int a = 15;
		int b = 20;
		System.out.println("Hello World!");

		System.out.println("a + b = " + (a + b));
		System.out.println("a - b = " + (a - b));
		System.out.println("a * b = " + (a * b));
		System.out.println("a / b = " + (a / b));
		System.out.println("10.0 / 3 = " + (10.0 / 3));
		// 比如10除以3,结果是3,余数是1,取模就是取余数
		System.out.println("a % b = " + (a % b));
		System.out.println("18.4 % 4 = " + (18.4 % 4));
		// 字符串的拼接
		System.out.println("a + b = " + a + b + true);

		
	}
}

class Demo09 {
	public static void main(String[] args) {
		int a = 15;
		int b = 20;
		// ++   --难点
		a++;
		System.out.println("a = " + a);

		++b;
		System.out.println("b = " + b);

		int c = 15;
		int d = 20;

		// ++在后,先把自己的值赋给e,再自增
		int e = c++;  // c++ ===  c = c+1

		// ++在前,先自增,再把自己的值赋给e
		int f = ++d;
		System.out.println("c = " + c);
		System.out.println("d = " + d);
		System.out.println("e = " + e);
		System.out.println("f = " + f);
	}
}

七、赋值运算符

名称符号案例
赋值=
加法赋值+=
减法赋值-=
乘法赋值*=
除法赋值/=
取余赋值%=
class Demo10 {
	public static void main(String[] args) {
		// 赋值运算符
		int a = 10;
		int b = 15;

		a+=b;	// a = a + b
		System.out.println("a += b === " + a);

		a-=b;	// a = a - b
		System.out.println("a -= b === " + a);

		a*=b;	// a = a * b
		System.out.println("a *= b === " + a);

		a/=b;	// a = a / b
		System.out.println("a /= b === " + a);

		a%=b;	// a = a % b
		System.out.println("a %= b === " + a);
	}
}

八、关系运算符

名称符号案例
大于>
小于<
等于==
不等于!=
大于等于>=
小于等于<=
class Demo11 {
	public static void main(String[] args) {
		// 关系运算符====比较运算符
		int a = 10;
		int b = 15;
		System.out.println("a > b ? " + (a > b));
		System.out.println("a < b ? " + (a < b));
		System.out.println("a == b ? " + (a == b));
		System.out.println("a != b ? " + (a != b));
		System.out.println("a >= b ? " + (a >= b));
		System.out.println("a <= b ? " + (a <= b));
	}
}

九、逻辑运算符(重点掌握)

名称符号案例
逻辑与&
短路与&&
逻辑或|
短路或||
取反!
class Demo12 {
	public static void main(String[] args) {
		/**
			性别不同
			并且年龄符合条件
			
			逻辑与  只有两边的条件都是true,结果才是true
			
			true	&	true	===	true
			true	&	false	===	false
			false	&	true	===	false
			false	&	false	===	fasle
			遇到false结果就是false
			&&,短路与,只要遇到一个false,就返回false,后面的内容将不再执行
			yAge >= 22 & xAge >= 20

		*/

		int yAge = 22;
		int xAge = 20;
		boolean result = yAge >= 22 & xAge >= 20;
		System.out.println("符合办证的条件吗?" + result);
		
		// 没有车票 或者 有没有违禁物品
		int ticket = 1;
		boolean isSafe = false;
		// 逻辑或,有一个条件是true,结果就是true

		/*
			true	|	true	===	true
			true	|	false	===	true
			false	|	true	===	true
			false	|	fales	===	false
			遇到true,结果就是true

			||	短路或,只要遇到一个true,后面的内容将不再执行,直接返回true
		*/
		result = (ticket < 1) | (isSafe == false);

		System.out.println("会不会无法进站 ?" + result);

		System.out.println("!true == " + (!true));
		System.out.println("!false == " + (!false));
	}
}

十、三元运算符(三元表达式)(掌握)

判断语句/布尔值 ? 条件成立的时候返回的结果 : 条件不成立返回的结果;

class Demo13 {
	public static void main(String[] args) {
		int ticket = 0;
		String result = ticket >= 1 ? "检票成功,请经过安检" : "请先去购买车票";
		System.out.println(result);

		int a = 10;
		int b = 30;
		int max = a > b ? a : b;
		System.out.println("比较大的数字是:" + max);

		// 不引入第三个变量,交换a和b的值---作业
		int a0 = 15;
		int b0 = 20;
		// 35
		int temp = a0 + b0;
		a0 = temp - a0;
		b0 = temp - b0;

	}
}

十一、键盘录入–人机交互(熟练)

11.1 定义

  • 获取用户输入的内容
  • 使用到Scanner

11.1 使用过程

1、导入Scanner

2、创建Scanner对象

3、提示输入内容

4、获取对应类型的内容

5、使用获取到的内容

// import java.util.Scanner;
import java.util.*;
class Demo15 {
	public static void main(String[] args) {
		/*
			1、导入Scanner
			2、创建Scanner的对象
			3、提示用户输入name
			4、获取用户输入的name
			5、提示用户输入age
			6、获取用户输入的age
			7、输出用户输入的name和age
		*/
		// 2、创建Scanner的对象
		Scanner sc = new Scanner(System.in);

		// 3、提示用户输入name
		System.out.println("请输入名字:");
		// 4、获取用户输入的name
		String name = sc.nextLine();

		// 5、提示用户输入age
		System.out.println("请输入年龄:");
		// 6、获取用户输入的age
		int age = sc.nextInt();

		// 7、输出用户输入的name和age
		System.out.println("我的名字是:" + name + ",今年:" + age);
	}
}

十二、进制

  • 二进制
    • 0b
  • 八进制
    • 0
  • 十进制
  • 十六进制
    • 0x
class Demo16 {
	public static void main(String[] args) {
		System.out.println("Hello World!");
		/*
			1Byte
			0000 0000
			1111 1111

			0011 1100


			123   为什么是一百二十三
			100 + 20 + 3  为什么是这样

			3 = 3 * 1 = 3 * 10^(1-1)
			20 = 2 * 10 = 2 * 10^(2-1)
			100 = 1 * 100 = 1 * 10^(3-1) 


			0011 1100
			0 * 2^0 = 0 * 1 = 0
			0 * 2^1 = 0 * 2 = 0
			1 * 2^2 = 1 * 4 = 4
			1 * 2^3 = 1 * 8 = 8
			
			1 * 2^4 = 1 * 16 = 16
			1 * 2^5 = 1 * 32 = 32
			========================
			4 + 8 + 16 + 32 == 60

			2684 0000 0000

			000	==	0
			111	==	7

			一个八进制位范围是0--7

			00 111 100
			0	7	4

			0011 1100
				3	C

			二进制快速转换成十进制
			1	1	1	1	1	1	1	1
			128	64	32	16	8	4	2	1


			0	0	32	0	8	0	2	0
			0	0	1	0	1	0	1	0


			十进制快速转换成二进制===》计算器===》除积倒取余

		*/
	}
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值