Java基础入门笔记

软件: 一系列按照特定顺序组织的计算机数据和指令的集合。(程序+数据

程序:完成指定功能的指令。

计算机语言:用于人与计算机之间通讯的语言。

机器语言:由一段01的二进制代码所组成的语言。

  机器语言是直接由电脑CPU进行执行。

缺点:可读性、可移植性差、变成繁杂

有点:直接执行、速度快、资源占用少

汇编语言:

优点目标代码简短,占用内存少

计算机语言的发展:机器语言,汇编语言(低级语言),结构化语言,面向对象语言(高级语言)。

程序设计

1、分析问题

2、确定数据结构和算法

3、编制程序

4、调试问题

算法:指解决某一问题的方法和步骤。

程序中的错误分类:

语法错误 逻辑错误 运行错误

什么是JDK?什么是JRE

JDKjava开发工具包

JRE:  java运行环境

什么是.java文件?

字节码的中间码

什么是JVM?有什么作用?

虚拟机  字节码中间码解释为本地代码  

java代码的执行流程

.java(编译)-----.class(解释)---本地代码

JVM的工作流程?

类加载器 字节码校验  解释器 JIT

JIT是什么?有什么作用?

即时编译器 提高编译为本地代码速度

 class:类的标志

public:公共的(访问修饰符)

static:静态的(可选修饰符)

void:无(返回类型)

main:方法名(主方法)

String[] args):参数列表

System.out.print"*":输出,注意有两种形式

1System.out.print():这种形式的在书写时必须在()中添加内容,并且 添加的内容不会和下一行换行

2System.out.print():这种形式可以不书写内容,表示换行,如果有内容,则表示该内容之后换行

关键字

1  JAVA中有三种关键字:关键字 保留字 标识符

a  什么是关键字:在语言中具有特殊含义,并不能被随意使用的单词。

有两个特殊都得关键字:const/goto

b 保留字:保留字具有一定的含义,但不是关键字。

只有三个:true/false/null

c  标识符:用户自定义单词,但需要按照规定书写(类名不区分大小写)

数据类型

Java中具有11种数据类型

基本数据类型(简单数据类型):整型  浮点型(实型)   字符型   布尔型

整型:整数   继续分为四种:字节型byte   短整形short  长整型 long  整型 int(默认)

浮点型:小数  继续分为两种:单精度型 (float  7位) 双精度型(默认)(double   14位)

字符型:字符 char(a,b,c。。。。。)字符也是用二进制进行存储的 A ----65   a----97 并且顺序是连续的。

布尔型:boolean  true/false

复杂数据类型(引用数据类型)

String----字符串类型

变量和常量

java中存储值的方式:变量  常量

变量:在程序运行过程中可能发生变化的量。

Java中变量如何定义呢?

变量的定义:数据类型 变量名 = 值;例如:int x = 10

变量的书写有两种方式:1. 先声明后赋值 2. 声明时即赋值

变量的第一次赋值被称为初始化。

常量:在程序运行过程中不变的量。(不能改变)

例如:圆周率

常量的定义方式:final 数据类型 变量名称(全大写)=赋值;

final double  PI  =  3.14

字符型变量在定义时有两种定义方式:1.存储数值  2.存储字符

1.存储数值:在存储数值时,会根据ASC码表找到对应的字符进行存储。

2.存储一个字符,在存储字符时,字符需要使用’’括起来。

如果非要将自动提升逆向运行-------需要强行转换类型

怎么强行转换类型呢?在该数值前加上要转的类型即可。

例如:(char--强转符号

System.out.println((char)(g1+1))

什么是强转呢?-----会造成精度丢失的转换

什么是自转呢?-----不会造成精度丢失的转换

转义符

转义符的作用:将某个字符原本的意义进行替换。

Java中字符的默认值均为Unicode码。

什么是流程 :程序运行的顺序

JAVA中控制流程的手段有三种:

1、语句(条件语句/循环语句)

2、调用方法

3、返回类型

流程控制语句(条件语句+循环语句)

条件语句分为:if语句+switch语句

If语句的结构

If(表达式){

 语句

}

表达式应该是一个 boolean类型。当上述表达式为true,则执行{}中的语句,反之为false时不执行{}中的语句

如果只有一个if被称为单分支if语句;包含一个if一个else被称为双分支if语句;包含一个if多个else if 被称为多分支语句。

else  if  或者,给if语句提供其他判断条件。

在多分支和双分支中,如果选中了某一个条件,则其他条件的语句不会再执行了。

在多分支中,判断从上往下进行判断。

If语句嵌套,在if语句中的{}里也可以出现if

Switch选择

Switch语句的结构

Switch(选项){        ---选项可以是表达式,可以是变量、常量等值

Case  1:              ---case表示选项,选项和选择的数据类型一致即可,当然是常量

Case  2:              ---一般情况下switch中会有多个case语句,当传入选择时,会在 case中寻找与选择值选择值相同的选项进行运行,知道switch结束

}

Break                  ---表示结束当前switch语句或者当前循环

Default   ---表示默认选项

switch的小括号中可以是 int 型、byte型、String型、short型、枚举型

循环语句

循环也就是重复

循环中最重要的--就是找到循环的是什么(找到重复的内容)

循环语句:1for 循环 2while 循环 3do……while 循环

for 循环:

For(表达式1;表达式2;表达式3;){

语句;

}

表达式1:起始赋值

表达式2:能够执行的依据

表达式3:循环变量的变化情况(可以增加,也可以减少)

三个表达式告知了循环的次数

语句:重复的事情

作用域 该内容可以使用范围(该范围是包含他的{}之间,并且在使用之前)

执行顺序:表达式1 ;表达式2;语句;表达式3;表达式2;语句……

死循环-----无限循环

While循环

结构:表达式1

while(表达式2{

语句

表达式3

}

do while 循环

结构:

表达式1

do {

语句

表达式3

}while(表达式2;

do 。。。While 循环的表达式2后面会有分号(;

While for 循环有可能一次都不会执行循环体,但是do。。。While至少执行一次

Continue关键字

结束当前循环,进入下一次循环

Break 关键字

直接结束循环,跳出程序

Break既可以在switch中使用,也可以在循环中使用,所以一个break只会跳出一个switch循环。 contiune只能在循环中使用

嵌套循环语句

在一个循环语句中还有一个循环语句,并且作为其循环体存在,被称为双重循环。

什么是数组

1、数据类型一致2、长度固定不变3、连续的内存空间

为了用数组中的数据,在每一个区域都起了一个标记(下标  索引)以方便使用

下标从0开始直到数组的最大长度-1

数组如何使用元素?

数组名称[下标]

数组的书写方式:

例:定义一个长度为5int型数组      int[] a = new int [5]

Int []  --数组的数据类型  a是数组名称 = new  int[5]; 告诉数组的长度

如何存值

使用数组的某一个框----例  :   a[0]     表示第一个框

A[0]=1;  数组名称[下标]  -- 找出的是第一个元素

如何使用-----和赋值时一样

即使数组的元素没有赋值,单同样会有默认值。

下标可以是:字面量 变量  常量 表达式

下标必须是整数

如果在使用元素时不小心使用了不在范围中的下标,则会出现:Java.lang.ArrayIndexOutOfBoundsException--------数组下标越界异常  如果要获得某一个数组的长度,则可以使用--数组名.length

数组的定义方式2:

如果在定义数组时就知道有哪些值,则使用第二种

Int[] a  ={ 1,2,3,4,5,6,7,8,9,.......};

第三种数组定义方式:

Int [] a  = new int []{ 1,2,3,4,5,6,7,8,9.....};

可以使用数组名称.length表示数组的长度

随机数

Math.random()产生一个随机数  >=0&&<1

取值范围

a~b

b-a+1+a




你可能感兴趣的:(编程,笔记)