欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java SE 学习笔记

程序员文章站 2022-06-09 21:38:57
...

第1章 概述

1.1 计算机组成部分
计算机的组成主要分为两大类:硬件,软件
硬件是可以看的到的一些物理部分,都是一些电子元器件
软件是看不得到的部分,它是一些列的指令,这些指令主要用于控制硬件来完成一些列特定的工作
常见的硬件:

CPU:Center Processing Unit *处理器 主要指令控制和数值计算功能(日常工作任务)
内存:临时性存储数据的存储设备RAM,当内存不通电的时候,这数据也就消失了
显卡GPU:Graphic Processing Unit 图形图像处理单元 主要用于计算图形数据(图形图像任
务)
存储设备:永久性存储设备ROM 任何数据都是以二进制的形式存储的 机械硬盘 固态硬盘 U盘 光盘 移动硬盘
输入输出设备
键盘:输入字符数据
鼠标:输入定位数据
显示器:输出图形图像数据
扬声器:输出声音数据
麦克风:输入声音数据
打印机:输出图形图像文本数据
扫描仪:输入图形图像文本数据
网络设备
输入:从互联网上下载数据
输出:从本地上传数据到互联网

1.2 人机交互方式
我们如何与计算机打交道的

  • 图形化界面操作方式:操作简单,表现直观,容易上手操作,步骤繁琐,占用空间大
  • 命令行操作方式 CMD(Command win+R输入cmd回车)窗口:操作复杂,命令较多,不容易 上手,步骤简单,占用空间小,适合远程操作

常用dos命令

  • c: 进入C盘根目录
  • d: 进入D盘根目录
  • cd xxx 进入xxx目录
  • dir 查看当前目录下有什么文件和目录
  • cd / 进入到当前所在盘符的根目录
  • cd … 返回上一级目录
  • cls 清屏
  • exit 退出cmd窗口

1.3 Java语言介绍

Java语言的前身Oak(橡树),1994年詹姆斯高斯林和他的团队开发出来的嵌入式编程语言.随着互联网的发展,紧随潮流编程互联网应用程序开发语言(面向对象),一直到2010年Sun公司被Oracle收购,Java就属于Oralce的子产品。

  • Oracle公司主要业务:

数据库 Oralce数据库 随后也把民间产品MySQL也收购了
Linux服务器操作系统Solaris(redhat Ubuntu 深度 SUSE)
编程语言Java

  • Microsoft公司主要业务:

SQL Server
Windows/Windows Server
C++/C#

Java技术架构

JavaSE Java Standard Edition Java标准版:桌面型应用程序
JavaEE Java Enterprise Edition Java企业版:服务器应用程序
JavaME Java Micro Edition Java微型版:嵌入式应用程序

Java最大的特点——跨平台
跨平台的意思就是说,一个软件可以在多个平台上运行,而不用更改软件的内容。是因为JVM的功劳:JVM(Java Virtual Machine)Java虚拟机。Java源代码文件后缀名为xxx.java 所编译出来的二进制文件后缀名为xxx.classJVM主要负责将java语言的字节码文件转换为本地操作系统指令的一个工具软件。所以,最终是字节码文件在跨平台!

1.4 Java基础语法

数据类型​​
八种基本数据类型

byte,short,int,long,float,double,char,boolean 

在Java中的关键字、保留字、标识符等使用方法和C++相似,但是变量:必须初始化。

byte类型的取值范围也是[-128, 127]。

long类型和float类型在定义时,值后面要加l或L, f或F。

boolean类型不用0或非0的数值来表示,仅由True/False
True/FalseTrue/False表示,这里和其他语言不同。

boolean b1 = true;  boolean b2 = false;

换行输出语句:

System.out.println(str);

引用类型:String

String str = "Hello world!";

​引用类型都可以用null作为值,也就是说可以在初始化的时候赋值为null,所以,String可以使用null作为值,此外,String与其他类型还有一个不同点:其值是不变的,这和引用类型在内存中的存储机制有关

String可以用加法进行拼接。

基本数据类型转换

  • char, byte, short三者同级,不可互相转换且<int <long <float < double。
  • 多种数据类型同时计算时,统一成最大容量的类型进行计算。
  • 而多个相同类型变量运算时,先要转换为相对应的数据类型的默认类型(比如:两个byte类型的变量相加,会把两个byte类型转换为默认的int类型之后再计算,得到的结果是int类型)这种情况适用于变量类型的容量小于默认变量类型

且:当把任何基本类型的值和字符串值进行连接运算时(+),基本数据类型自动转换为字符串类型。

强制类型转换

int k = 7;
byte a = (byte) k;
String a = "43";
int i = Integer.parselnt(a);

boolean类型不可以转换为其他的数据类型。

运算符
赋值运算符
支持连续赋值。

注意:

如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是负数则不可忽略。此外,取模运算的结果不一定总是整数
int型之间做除法时,只保留整数部分而舍弃小数部分。 “+”除字符串相加功能外,还能把非字符串转换成字符串.例如:
System.out.println(“5+5=”+5+5); //打印结果是?5+5=55 以下二者的区别:
System.out.println(‘’ + ‘\t’ +‘’); 输出:93,为Ascall码,42+9+42=93
System.out.println(“” + ‘\t’ +‘’);输出:* *

逻辑运算符:与&、或|、非!、异或^

  • 异或运算:一个true,一个false则为true 同为true或同为false则为false。
  • 单&时,为逻辑与,左边无论真假,右边都进行运算。
  • 双&时,为短路与,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
  • “|”和“||”的区别同理,||表示:当左边为真,右边不参与运算。

其他运算符

  • 位运算符:转换为2进制,各个位置进行运算。
  • 三目运算符:(条件表达式)?表达式1:表达式2; 条件表达式为true则运算后的结果为表达式1否则为表达式2。

程序流程控制
顺序结构:按照顺序执行

分支结构

(1)	if(条件){
		 语句;
	}else if(条件){
		语句;
	}else{
		语句;
	}
(2) int i = 1;
switch(i){
	case 1:
		语句;
		break;
	case 2:
		语句;
		break;
	default:
		语句;
		break;
	}
//switch(表达式)中表达式的返回值必须是下述几种类型之一:byte, short, char, int, 枚举,String;
//case子句中的值必须是常量,且其值应该不同,语句块中没有break程序会执行到switch结尾

循环结构

  • for 循环
  • while 循环
  • do-while 循环
  • 循环嵌套

特殊流程控制语句

  • break:结束当前所处的整个循环。
  • continue:跳出当前循环,直接进去下一循环。
  • return:并非专门用于结束循环,执行到return语句时,不管出于几层循环内,将结束整个方法。