JAVA基础

来源:互联网 发布:淘宝开店流程图 编辑:程序博客网 时间:2024/06/05 23:39


1:计算机概述(了解)

(1)计算机

(2)计算机硬件

(3)计算机软件

系统软件:window,linux,mac

应用软件:qq,yy,飞秋

(4)软件开发(理解)

软件:是由数据和指令组成的。(计算器)

开发:就是把软件做出来。

如何实现软件开发呢?

就是使用开发工具和计算机语言做出东西来

(5)语言

自然语言:人与人交流沟通的

计算机语言:人与计算机交流沟通的

C,C++,C#,Java

(6)人机交换

图形界面:操作方便只管

DOS命令:需要记忆一些常见的命令


2:键盘功能键的认识和快捷键(掌握)

(1)功能键的认识

tab

shift

ctrl

alt

windos

空格

上下左右

回车

截图

(2)快捷键

全选Ctrl+A

复制Ctrl+C

粘贴Ctrl+V

剪切Ctrl+X

撤销Ctrl+Z

保存Ctrl+S


3:常见的DOS命令(掌握)

(1)常见的如下

盘符的切换

d:回车

目录的进入

cd javase

cd javase\day01\code

目录的回退

cd..

cd\

清屏

cls

退出

exit

(2)其他的几个(了解)

创建目录

删除目录

创建文件

删除文件

显示目录下的内容

删除带内容的目录


4:Java语言概述(了解)

(1)Java语言的发展史

Java之父

JDK1.4.2

JDK5

JDK7

(2)Java语言的特点

有很多小特点,重点有两个开源,跨平台

(3)Java语言是跨平台的,请问是如何保证的呢?(理解)

我们是通过翻译的案例讲解的。

针对不同的操作系统,提高不同的jvm来实现的。

(4)Java语言的平台

JavaSE

JavaME--Android

JavaEE


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

(1)作用

JVM:保证Java语言跨平台

JRE:Java程序的运行环境

JDK:Java程序的开发环境

(2)关系

JDK:JRE+工具

JRE:JVM+类库


6:JDK的下载,安装,卸载(掌握)

(1)下载到官网。

A:也可以到百度搜索即可。

B:我给你。

(2)安装

A:绿色版解压就可以使用

B:安装版必须一步一步的安装,一般只要会点击下一步即可

注意:

建议所有跟开发相关的软件都不要安装在有中文或者空格的目录下。

(3)卸载

A:绿色版直接删除文件夹

B:安装版

a:控制面板 -- 添加删除程序

b:通过专业的软件卸载工具。(比如360的软件管家卸载)


7:第一个程序:HelloWorld案例(掌握)

class HelloWorld {

public static void main(String[] args) {

System.out.println("HelloWorld");

}

}

(1)程序解释:

A:Java程序的最基本单位是类,所以我们要定义一个类。

格式:class 类名

举例:class HelloWorld

B:在类中写内容的时候,用大括号括起来。

C:Java程序要想执行,必须有main方法。

格式:public static void main(String[] args)

D:要指向那些东西呢,也用大括号括起来。

E:你要做什么呢?今天我们仅仅做了一个简单的输出

格式:System.out.println("HelloWorld");

注意:""里面的内容是可以改动的。

(2)Java程序的开发执行流程:

A:编写java源程序(.java)

B:通过javac命令编译生成.class文件

C:通过java命令运行.class文件

8:常见的问题(掌握)

(1)扩展名被隐藏

如何找到:工具--文件夹选项--查看--去除隐藏扩展名的那个勾勾

(2)我要求文件名称和类名一致。

实际上不这样做也是可以的。

但是,注意:

javac后面跟的是文件名+扩展名

java后面跟的类名不带扩展名

(3)Java语言严格区分大小写,请注意。

还有就是单词不要写错了。

(4)见到非法字符: \65307肯定是中文问题。

我们写程序要求标点符号必须全部是英文状态。

(5)括号的配对问题。

一般来说,括号都是成对出现的。

(6)遇到

在类 HelloWorld 中找不到主方法, 请将主方法定义为

肯定是主方法的格式问题。


9:path环境变量(掌握)

(1)path环境变量的作用

保证javac命令可以在任意目录下运行。

同理可以配置qq等

(2)path配置的两种方案:

A:方案1(了解)

B:方案2

找到环境变量的位置,在系统变量里面

新建:

变量名:JAVA_HOME

变量值:D:\develop\Java\jdk1.7.0_60

修改:

变量名:Path

变量值:%JAVA_HOME%\bin;以前的内容


10:classpath环境变量(理解)

(1)classpath环境变量的作用

保证class文件可以在任意目录下运行

(2)classpath环境变量的配置

找到环境变量的位置,在系统变量里面

新建:

变量名:classpath

变量值:E:\JavaSE\day01\code\HelloWorld案例


、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

1:关键字(掌握)

(1)被Java语言赋予特定含义的单词

(2)特点:

全部小写。

(3)注意事项:

A:goto和const作为保留字存在。

B:类似于Notepad++这样的高级记事本会对关键字有特殊颜色标记


2:标识符(掌握)

(1)就是给类,接口,方法,变量等起名字的字符序列

(2)组成规则:

A:英文大小写字母

B:数字

C:$和_

(3)注意事项:

A:不能以数字开头

B:不能是java中的关键字

C:区分大小写

(4)常见的命名规则(见名知意)

A:包全部小写

单级包:小写

举例:liuyi,com

多级包:小写,并用.隔开

举例:cn.itcast,com.baidu

B:类或者接口

一个单词:首字母大写

举例:Student,Demo

多个单词:每个单词首字母大写

举例:HelloWorld,StudentName

C:方法或者变量

一个单词:首字母小写

举例:name,main

多个单词:从第二个单词开始,每个单词首字母大写

举例:studentAge,showAllNames()

D:常量

全部大写

一个单词:大写

举例:PI

多个单词:大写,并用_隔开

举例:STUDENT_MAX_AGE


3:注释(掌握)

(1)就是对程序进行解释说明的文字

(2)分类:

A:单行注释//

B:多行注释/**/

C:文档注释(后面讲) /** */

(3)把HelloWorld案例写了一个带注释的版本。

后面我们要写一个程序的过程。

需求:

分析:

实现:

代码体现:

(4)注释的作用

A:解释说明程序,提高了代码的阅读性。

B:可以帮助我们调试程序。

后面我们会讲解一个更高端的一个调试工具


4:常量(掌握)

(1)在程序执行的过程中,其值不发生改变的量

(2)分类:

A:字面值常量

B:自定义常量(后面讲)

(3)字面值常量

A:字符串常量 "hello"

B:整数常量12,23

C:小数常量12.345

D:字符常量'a','A','0'

E:布尔常量true,false

F:空常量null(后面讲)

(4)在Java中针对整数常量提供了四种表现形式

A:二进制由0,1组成。以0b开头。

B:八进制由0,1,...7组成。以0开头。

C:十进制由0,1,...9组成。整数默认是十进制。

D:十六进制由0,1,...9,a,b,c,d,e,f(大小写均可)组成。以0x开头。


5:进制转换(了解)

(1)其他进制到十进制

系数:就是每一个位上的数值

基数:x进制的基数就是x

权:对每一个位上的数据,从右,并且从0开始编号,对应的编号就是该数据的权。

结果:系数*基数^权次幂之和。

(2)十进制到其他进制

除基取余,直到商为0,余数反转。

(3)进制转换的快速转换法

A:十进制和二进制间的转换

8421码。

B:二进制到八进制,十六进制的转换


6:变量(掌握)

(1)在程序的执行过程中,其值在某个范围内可以发生改变的量

(2)变量的定义格式:

A:数据类型 变量名 = 初始化值;

B:数据类型 变量名;

 变量名 = 初始化值;


7:数据类型(掌握)

(1)Java是一种强类型语言,针对每种数据都提供了对应的数据类型。

(2)分类:

A:基本数据类型:4类8种

B:引用数据类型:类,接口,数组。

(3)基本数据类型

A:整数占用字节数

byte1

short2

int 4

long8

B:浮点数

float4

double8

C:字符

char2

D:布尔

boolean1

注意:

整数默认是int类型,浮点数默认是double。

长整数要加L或者l。

单精度的浮点数要加F或者f。


8:数据类型转换(掌握)

(1)boolean类型不参与转换

(2)默认转换

A:从小到大

B:byte,short,char -- int -- long -- float -- double

C:byte,short,char之间不相互转换,直接转成int类型参与运算。

(3)强制转换

A:从大到小

B:可能会有精度的损失,一般不建议这样使用。

C:格式:

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

(4)思考题和面试题:

A:下面两种方式有区别吗?

float f1 = 12.345f;

float f2 = (float)12.345;

B:下面的程序有问题吗,如果有,在哪里呢?

byte b1 = 3;

byte b2 = 4;

byte b3 = b1 + b2;

byte b4 = 3 + 4;

C:下面的操作结果是什么呢?

byte b = (byte)130;

D:字符参与运算

是查找ASCII里面的值

'a'97

'A'65

'0'48

System.out.println('a');

System.out.println('a' + 1);

E:字符串参与运算

这里其实是字符串的连接

System.out.println("hello"+'a'+1);

System.out.println('a'+1+"hello");

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

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

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

浮点数和进制转换


float类型数字在计算机中用4个字节存储。遵循IEEE-754格式标准:

一个浮点数有2部分组成:底数m和指数e


底数部分 使用二进制数来表示此浮点数的实际值

指数部分 占用8bit的二进制数,可表示数值范围为0-255


但是指数可正可负,所以,IEEE规定,此处算出的次方必须减去127才是真正的指数。

所以,float类型的指数可从-126到128


底数部分实际是占用24bit的一个值,但是最高位始终为1,所以,最高位省去不存储,在存储中占23bit

科学计数法。


格式:

SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM

S表示浮点数正负    

E指数加上127后的值得二进制数据

M底数


举例:

17.625在内存中的存储


首先要把17.625换算成二进制:10001.101


整数部分,除以2,直到商为0,余数反转。

小数部分,乘以2,直到乘位0,进位顺序取。


在将10001.101右移,直到小数点前只剩1位:

1.0001101 * 2^4 因为右移动了四位


这个时候,我们的底数和指数就出来了

底数:因为小数点前必为1,所以IEEE规定只记录小数点后的就好。所以,此处的底数为:0001101

指数:实际为4,必须加上127(转出的时候,减去127),所以为131。也就是10000011

符号部分是整数,所以是0

综上所述,17.625在内存中的存储格式是:

01000001 10001101 00000000 00000000


面试题:

第一题:

byte b1=3,b2=4,b;

b=b1+b2;  // 报错!! 不能从int转换为字节

b=3+4;

哪句是编译失败的呢?为什么呢?


第二题:

byte  by = 130;有没有问题?有问题如何解决?结果是多少呢?

有错误,byte范围 -128~~127.



1:计算机概述(了解)

(1)计算机

(2)计算机硬件

(3)计算机软件

系统软件:window,linux,mac

应用软件:qq,yy,飞秋

(4)软件开发(理解)

软件:是由数据和指令组成的。(计算器)

开发:就是把软件做出来。

如何实现软件开发呢?

就是使用开发工具和计算机语言做出东西来

(5)语言

自然语言:人与人交流沟通的

计算机语言:人与计算机交流沟通的

C,C++,C#,Java

(6)人机交换

图形界面:操作方便只管

DOS命令:需要记忆一些常见的命令


2:键盘功能键的认识和快捷键(掌握)

(1)功能键的认识

tab

shift

ctrl

alt

windos

空格

上下左右

回车

截图

(2)快捷键

全选Ctrl+A

复制Ctrl+C

粘贴Ctrl+V

剪切Ctrl+X

撤销Ctrl+Z

保存Ctrl+S


3:常见的DOS命令(掌握)

(1)常见的如下

盘符的切换

d:回车

目录的进入

cd javase

cd javase\day01\code

目录的回退

cd..

cd\

清屏

cls

退出

exit

(2)其他的几个(了解)

创建目录

删除目录

创建文件

删除文件

显示目录下的内容

删除带内容的目录


4:Java语言概述(了解)

(1)Java语言的发展史

Java之父

JDK1.4.2

JDK5

JDK7

(2)Java语言的特点

有很多小特点,重点有两个开源,跨平台

(3)Java语言是跨平台的,请问是如何保证的呢?(理解)

我们是通过翻译的案例讲解的。

针对不同的操作系统,提高不同的jvm来实现的。

(4)Java语言的平台

JavaSE

JavaME--Android

JavaEE


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

(1)作用

JVM:保证Java语言跨平台

JRE:Java程序的运行环境

JDK:Java程序的开发环境

(2)关系

JDK:JRE+工具

JRE:JVM+类库


6:JDK的下载,安装,卸载(掌握)

(1)下载到官网。

A:也可以到百度搜索即可。

B:我给你。

(2)安装

A:绿色版解压就可以使用

B:安装版必须一步一步的安装,一般只要会点击下一步即可

注意:

建议所有跟开发相关的软件都不要安装在有中文或者空格的目录下。

(3)卸载

A:绿色版直接删除文件夹

B:安装版

a:控制面板 -- 添加删除程序

b:通过专业的软件卸载工具。(比如360的软件管家卸载)


7:第一个程序:HelloWorld案例(掌握)

class HelloWorld {

public static void main(String[] args) {

System.out.println("HelloWorld");

}

}

(1)程序解释:

A:Java程序的最基本单位是类,所以我们要定义一个类。

格式:class 类名

举例:class HelloWorld

B:在类中写内容的时候,用大括号括起来。

C:Java程序要想执行,必须有main方法。

格式:public static void main(String[] args)

D:要指向那些东西呢,也用大括号括起来。

E:你要做什么呢?今天我们仅仅做了一个简单的输出

格式:System.out.println("HelloWorld");

注意:""里面的内容是可以改动的。

(2)Java程序的开发执行流程:

A:编写java源程序(.java)

B:通过javac命令编译生成.class文件

C:通过java命令运行.class文件

8:常见的问题(掌握)

(1)扩展名被隐藏

如何找到:工具--文件夹选项--查看--去除隐藏扩展名的那个勾勾

(2)我要求文件名称和类名一致。

实际上不这样做也是可以的。

但是,注意:

javac后面跟的是文件名+扩展名

java后面跟的类名不带扩展名

(3)Java语言严格区分大小写,请注意。

还有就是单词不要写错了。

(4)见到非法字符: \65307肯定是中文问题。

我们写程序要求标点符号必须全部是英文状态。

(5)括号的配对问题。

一般来说,括号都是成对出现的。

(6)遇到

在类 HelloWorld 中找不到主方法, 请将主方法定义为

肯定是主方法的格式问题。


9:path环境变量(掌握)

(1)path环境变量的作用

保证javac命令可以在任意目录下运行。

同理可以配置qq等

(2)path配置的两种方案:

A:方案1(了解)

B:方案2

找到环境变量的位置,在系统变量里面

新建:

变量名:JAVA_HOME

变量值:D:\develop\Java\jdk1.7.0_60

修改:

变量名:Path

变量值:%JAVA_HOME%\bin;以前的内容


10:classpath环境变量(理解)

(1)classpath环境变量的作用

保证class文件可以在任意目录下运行

(2)classpath环境变量的配置

找到环境变量的位置,在系统变量里面

新建:

变量名:classpath

变量值:E:\JavaSE\day01\code\HelloWorld案例


、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

1:关键字(掌握)

(1)被Java语言赋予特定含义的单词

(2)特点:

全部小写。

(3)注意事项:

A:goto和const作为保留字存在。

B:类似于Notepad++这样的高级记事本会对关键字有特殊颜色标记


2:标识符(掌握)

(1)就是给类,接口,方法,变量等起名字的字符序列

(2)组成规则:

A:英文大小写字母

B:数字

C:$和_

(3)注意事项:

A:不能以数字开头

B:不能是java中的关键字

C:区分大小写

(4)常见的命名规则(见名知意)

A:包全部小写

单级包:小写

举例:liuyi,com

多级包:小写,并用.隔开

举例:cn.itcast,com.baidu

B:类或者接口

一个单词:首字母大写

举例:Student,Demo

多个单词:每个单词首字母大写

举例:HelloWorld,StudentName

C:方法或者变量

一个单词:首字母小写

举例:name,main

多个单词:从第二个单词开始,每个单词首字母大写

举例:studentAge,showAllNames()

D:常量

全部大写

一个单词:大写

举例:PI

多个单词:大写,并用_隔开

举例:STUDENT_MAX_AGE


3:注释(掌握)

(1)就是对程序进行解释说明的文字

(2)分类:

A:单行注释//

B:多行注释/**/

C:文档注释(后面讲) /** */

(3)把HelloWorld案例写了一个带注释的版本。

后面我们要写一个程序的过程。

需求:

分析:

实现:

代码体现:

(4)注释的作用

A:解释说明程序,提高了代码的阅读性。

B:可以帮助我们调试程序。

后面我们会讲解一个更高端的一个调试工具


4:常量(掌握)

(1)在程序执行的过程中,其值不发生改变的量

(2)分类:

A:字面值常量

B:自定义常量(后面讲)

(3)字面值常量

A:字符串常量 "hello"

B:整数常量12,23

C:小数常量12.345

D:字符常量'a','A','0'

E:布尔常量true,false

F:空常量null(后面讲)

(4)在Java中针对整数常量提供了四种表现形式

A:二进制由0,1组成。以0b开头。

B:八进制由0,1,...7组成。以0开头。

C:十进制由0,1,...9组成。整数默认是十进制。

D:十六进制由0,1,...9,a,b,c,d,e,f(大小写均可)组成。以0x开头。


5:进制转换(了解)

(1)其他进制到十进制

系数:就是每一个位上的数值

基数:x进制的基数就是x

权:对每一个位上的数据,从右,并且从0开始编号,对应的编号就是该数据的权。

结果:系数*基数^权次幂之和。

(2)十进制到其他进制

除基取余,直到商为0,余数反转。

(3)进制转换的快速转换法

A:十进制和二进制间的转换

8421码。

B:二进制到八进制,十六进制的转换


6:变量(掌握)

(1)在程序的执行过程中,其值在某个范围内可以发生改变的量

(2)变量的定义格式:

A:数据类型 变量名 = 初始化值;

B:数据类型 变量名;

 变量名 = 初始化值;


7:数据类型(掌握)

(1)Java是一种强类型语言,针对每种数据都提供了对应的数据类型。

(2)分类:

A:基本数据类型:4类8种

B:引用数据类型:类,接口,数组。

(3)基本数据类型

A:整数占用字节数

byte1

short2

int 4

long8

B:浮点数

float4

double8

C:字符

char2

D:布尔

boolean1

注意:

整数默认是int类型,浮点数默认是double。

长整数要加L或者l。

单精度的浮点数要加F或者f。


8:数据类型转换(掌握)

(1)boolean类型不参与转换

(2)默认转换

A:从小到大

B:byte,short,char -- int -- long -- float -- double

C:byte,short,char之间不相互转换,直接转成int类型参与运算。

(3)强制转换

A:从大到小

B:可能会有精度的损失,一般不建议这样使用。

C:格式:

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

(4)思考题和面试题:

A:下面两种方式有区别吗?

float f1 = 12.345f;

float f2 = (float)12.345;

B:下面的程序有问题吗,如果有,在哪里呢?

byte b1 = 3;

byte b2 = 4;

byte b3 = b1 + b2;

byte b4 = 3 + 4;

C:下面的操作结果是什么呢?

byte b = (byte)130;

D:字符参与运算

是查找ASCII里面的值

'a'97

'A'65

'0'48

System.out.println('a');

System.out.println('a' + 1);

E:字符串参与运算

这里其实是字符串的连接

System.out.println("hello"+'a'+1);

System.out.println('a'+1+"hello");

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

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

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

浮点数和进制转换


float类型数字在计算机中用4个字节存储。遵循IEEE-754格式标准:

一个浮点数有2部分组成:底数m和指数e


底数部分 使用二进制数来表示此浮点数的实际值

指数部分 占用8bit的二进制数,可表示数值范围为0-255


但是指数可正可负,所以,IEEE规定,此处算出的次方必须减去127才是真正的指数。

所以,float类型的指数可从-126到128


底数部分实际是占用24bit的一个值,但是最高位始终为1,所以,最高位省去不存储,在存储中占23bit

科学计数法。


格式:

SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM

S表示浮点数正负    

E指数加上127后的值得二进制数据

M底数


举例:

17.625在内存中的存储


首先要把17.625换算成二进制:10001.101


整数部分,除以2,直到商为0,余数反转。

小数部分,乘以2,直到乘位0,进位顺序取。


在将10001.101右移,直到小数点前只剩1位:

1.0001101 * 2^4 因为右移动了四位


这个时候,我们的底数和指数就出来了

底数:因为小数点前必为1,所以IEEE规定只记录小数点后的就好。所以,此处的底数为:0001101

指数:实际为4,必须加上127(转出的时候,减去127),所以为131。也就是10000011

符号部分是整数,所以是0

综上所述,17.625在内存中的存储格式是:

01000001 10001101 00000000 00000000


面试题:

第一题:

byte b1=3,b2=4,b;

b=b1+b2;  // 报错!! 不能从int转换为字节

b=3+4;

哪句是编译失败的呢?为什么呢?


第二题:

byte  by = 130;有没有问题?有问题如何解决?结果是多少呢?

有错误,byte范围 -128~~127.


0 0
原创粉丝点击