java面试基础知识总结_第1页
java面试基础知识总结_第2页
java面试基础知识总结_第3页
java面试基础知识总结_第4页
java面试基础知识总结_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java面试基础知识总结

写代码:

1,明确需求。我要做什么?

2,分析思路。我要怎么做?1,2,3。

3,确定步骤。每一个思路部分用到哪些语句,方法,

和对象。

4,代码实现。用具体的java语言代码把思路体现出

来。

学习新技术的四点:

1,该技术是什么?

2,该技术有什么特点(使用注意):

3,该技术怎么使用。demo

4,该技术什么时候用?testo

java概述:

1991年Sun公司的JamesGosling等人开始开发名

称为Oak的语言,希望用于控制嵌入在有线电视交换盒、

PDA等的微处理器;

1994年将Oak语言更名为Java;

Java的三种技术架构:

JAVAEE:JavaPlatformEnterpriseEdition,开发

企业环境下的应用程序,主要针对web程序开发;JAVASE:

JavaPlatformStandardEdition,完成桌面应用程序的开

发,是其它两者的基础;JAVAME:JavaPlatformMicro

Edition,开发电子消费产品和嵌入式设备,如手机中的程

序;

1,JDK:JavaDevelopmentKit,java的开发和运行

环境,java的开发工具和jreo

2,JRE:JavaRuntimeEnvironment,java程序的运

行环境,java运行的所需的类库+JVM(java虚拟机)。3,

配置环境变量:让javajdkDin目录下的工具,可以在任

意目录下运行,原因是,将该工具所在目录告诉了系统,当

使用该工具时,由系统帮我们去找指定的目录。

环境变量的配置:

1):永久配置方式:JAVA_H0ME=%安装路径%Javajdk

path-%JAVAH0ME%Din2):临时配置方式:set

path=%path%;C:ProgramFilesJavajdkDin

特点:系统默认先去当前路径下找要执行的程序,如

果没有,再去path中设置的路径下找。classpath的配置:

1):永久配置方式:classpath=.;c:;e:

2):临时配置方式:setclasspath=.;c:;e:

注意:在定义classpath环境变量时,需要注意的情

如果没有定义环境变量classpath,java启动jvm后,

会在当前目录下查找要运行的类文件;如果指定了

classpath,那么会在指定的目录下查找要运行的类文件。

还会在当前目录找吗?两种情况:

1):如果classpath的值结尾处有分号,在具体路径

中没有找到运行的类,会默认在当前目录再找一次。

2):如果classpath的值结果出没有分号,在具体的

路径中没有找到运行的类,不会再当前目录找。一般不指

定分号,如果没有在指定目录下找到要运行的类文件,就报

错,这样可以调试程序。

4,javac命令和java命令做什么事情呢?

要知道java是分两部分的:一个是编译,一个是运

行。

javac:负责的是编译的部分,当执行javac时,会

启动java的编译器程序。对指定扩展名的.java文件进行编

译。生成了jvm可以识别的字节码文件。也就是class文

件,也就是java的运行程序。

java:负责运行的部分.会启动jvm.加载运行时所需

的类库,并对class文件进行执行.

一个文件要被执行,必须要有一个执行的起始点,这

个起始点就是main函数.

---------------------------------------------二:java

语法基础:

1,关键字:其实就是某种语言赋予了特殊含义的单

词。

保留字:其实就是还没有赋予特殊含义,但是准备日

后要使用过的单词。

2,标示符:其实就是在程序中自定义的名词。比如

类名,变量名,函数名。包含0-9、a-z.$、_;注意:

1),数字不可以开头。2),不可以使用关键字。

3,常量:是在程序中的不会变化的数据。

4,变量:其实就是内存中的一个存储空间,用于存

储常量数据。

作用:方便于运算。因为有些数据不确定。所以确定

该数据的名词和存储空间。

特点:变量空间可以重复使用。

什么时候定义变量?只要是数据不确定的时候,就定

义变量。

变量空间的开辟需要什么要素呢?

1,这个空间要存储什么数据?数据类型。

2,这个空间叫什么名字啊?变量名称。

3,这个空间的第一次的数据是什么?变量的初始化

值。

变量的作用域和生存期:

变量的作用域:

作用域从变量定义的位置开始,到该变量所在的那对

大括号结束;

生命周期:

变量从定义的位置开始就在内存中活了;

变量到达它所在的作用域的时候就在内存中消失了;

数据类型:

1):基本数据类型:byte、short、int、long、float、

double、char、boolean

2):引用数据类型:数组、类、接口。

级别从低到高为:byte,char,short(这三个平

级)一>int-->float->long->double

自动类型转换:从低级别到高级别,系统自动转的;

强制类型转换:什么情况下使用?把一个高级别的数

赋给一个别该数的级别低的变量;

运算符号:

1)、算术运算符。

+-*/%%任何整数模2不是0就是1,所以只要

改变被模数就可以实现开关运算。

+:连接符。

++,一

2)、赋值case值:要执行的语句;break;

?

default:要执行的语句;

}

工作原理:用小括号中的变量的值依次和case后面

的值进行对比,和哪个case后面的值相同了

就执行哪个case后面的语句,如果没有相同的则执

行default后面的语句;

细节:1):break是可以省略的,如果省略了就一直

执彳亍到遇到break为止;

2):switch后面的小括号中的变量应该是

byte,char,short,int四种类型中的一种;

3):default可以写在switch结构中的任意位置;如

果将default语句放在了第一行,则不管expression与case

中的value是否匹配,程序会从default开始执行直到第一

个break出现。

2)、当判断数据范围,获取判断运算结果boolean类

型时,需要使用if。

3)、当某些语句需要执行很多次时,就用循环结构。

while和for可以进行互换。区别在于:如果需要定

义变量控制循环次数。建议使用for。因为for循环完毕,

变量在内存中释放。

break:作用于switch,和循环语句,用于跳出,或

者称为结束。

break语句单独存在时,下面不要定义其他语句,因

为执行不到,编译会失败。当循环嵌套时,break只跳出当

前所在循环。要跳出嵌套中的外部循环,只要给循环起名字

即可,这个名字称之为标号。

continue:只作用于循环结构,继续循环用的。

作用:结束本次循环,继续下次循环。该语句单独存

在时,下面不可以定义语句,执行不到。

6,函数:为了提高代码的复用性,可以将其定义成

一个单独的功能,该功能的体现就是java中的函数。函数

就是体现之一。

java中的函数的定义格式:

修饰符返回值类型函数名(参数类型形式参数1,

参数类型形式参数1,?){)执行语句;return返回值;

当函数没有具体的返回值时,返回的返回值类型用

void关键字表示。

如果函数的返回值类型是void时,return语句可以

省略不写的,系统会帮你自动加上。

return的作用:结束函数。结束功能。

如何定义一个函数?

函数其实就是一个功能,定义函数就是实现功能,通

过两个明确来完成:1)、明确该功能的运算完的结果,其

实是在明确这个函数的返回值类型。

2)、在实现该功能的过程中是否有未知内容参与了运

算,其实就是在明确这个函数的参数列表(参数类型&参数个

数)。

函数的作用:

1)、用于定义功能。

2)、用于封装代码提高代码的复用性。

注意:函数中只能调用函数,不能定义函数。

主函数:

1)、保证该类的独立运行。2)、因为它是程序的入

口。3)、因为它在被jvm调用。

函数定义名称是为什么呢?

答:1)、为了对该功能进行标示,方便于调用。

2)、为了通过名称就可以明确函数的功能,为了增加

代码的阅读性。

重载的定义是:在一个类中,如果出现了两个或者两

个以上的同名函数,只要它们的参数的个数,或者参数的类

型不同,即可称之为该函数重载了。

如何区分重载:当函数同名时,只看参数列表。和返

回值类型没关系。

7,数组:用于存储同一类型数据的一个容器。好处:

可以对该容器中的数据进行编号,从0开始。数组用于封装

数据,就是一个具体的实体。

如何在java中表现一个数组呢?两种表现形式。

1)、元素类型变量名=new元素类型;

2)、元素类型变量名={元素1,元素2...};

元素类型变量名=new元素类型{元素1,元素

2...};

〃二分查找法。必须有前提:数组中的元素要有序。

publicstaticinthalfSeach2(intarr,int

key){intmin,max,mid;min=0;max=;mid=

(max+min)»1;//(max+min)/2;

while(arr!=key){if(key>arr){}min=mid+1;else

if(keyl;

returnmid;

java分了5片内存。

1:寄存器。2:本地方法区。3:方法区。4:栈。5:

堆。

栈:存储的都是局部变量(函数中定义的变量,函

数上的参数,语句中的变量);

只要数据运算完成所在的区域结束,该数据就会被释

放。

堆:用于存储数组和对象,也就是实体。啥是实体啊?

就是用于封装多个数据的。

1:每一个实体都有内存首地址值。

2:堆内存中的变量都有默认初始化值。因为数据类

型不同,值也不一样。

3:垃圾回收机制。

三:面向对象:★★★★★

特点:

1:将复杂的事情简单化。

2:面向对象将以前的过程中的执行者,变成了指挥

者。

3:面向对象这种思想是符合现在人们思考习惯的一

种思想。

过程和对象在我们的程序中是如何体现的呢?过程

其实就是函数;对象是将函数等一些内容进行了封装。

匿名对象使用场景:

1:当对方法只进行一次调用的时候,可以使用匿名

对象。

2:当对象对成员进行多次调用时,不能使用匿名对

象。必须给对象起名字。

在类中定义其实都称之为成员。成员有两种:

1:成员变量:其实对应的就是事物的属性。

2:成员函数:其实对应的就是事物的行为。

所以,其实定义类,就是在定义成员变量和成员函数。

但是在定义前,必须先要对事物进行属性和行为的分析,才

可以用代码来体现。

写代码:

1,明确需求。我要做什么?

2,分析思路。我要怎么做?1,2,3。

3,确定步骤。每一个思路部分用到哪些语句,方法,

和对象。

4,代码实现。用具体的java语言代码把思路体现出

来。

学习新技术的四点:

1,该技术是什么?

2,该技术有什么特点(使用注意):

3,该技术怎么使用。demo

4,该技术什么时候用?testo

java概述:

1991年Sun公司的JamesGosling等人开始开发名

称为Oak的语言,希望用于控制嵌入在有线电视交换盒、

PDA等的微处理器;

1994年将Oak语言更名为Java;

Java的三种技术架构:

JAVAEE:JavaPlatformEnterpriseEdition,开发

企业环境下的应用程序,主要针对web程序开发;

JAVASE:JavaPlatformStandardEdition,完成桌

面应用程序的开发,是其它两者的基础;

JAVAME:JavaPlatformMicroEdition,开发电子

消费产品和嵌入式设备,如手机中的程序;

1,JDK:JavaDevelopmentKit,java的开发和运行

环境,java的开发工具和jreo

2,JRE:JavaRuntimeEnvironment,java程序的运

行环境,java运行的所需的类库+JVM(java虚拟机)。3,

配置环境变量:让javajdkDin目录下的工具,可以在任

意目录下运行,原因是,将该工具所在目录告诉了系统,当

使用该工具时,由系统帮我们去找指定的目录。

环境变量的配置:

1):永久配置方式:JAVAJ0ME=%安装路径%Javajdk

path=%JAVA„HOME%Din

2):临时配置方式:setpath=%path%;C:Program

FilesJavajdkDin

特点:系统默认先去当前路径下找要执行的程序,如

果没有,再去path中设置的路径下找。

classpath的配置:

1):永久配置方式:classpath=.;c:;e:

2):临时配置方式:setclasspath=.;c:;e:

注意:在定义classpath环境变量时,需要注意的情

如果没有定义环境变量classpath,java启动jvm后,

会在当前目录下查找要运行的类文件;

如果指定了classpath,那么会在指定的目录下查找

要运行的类文件。

还会在当前目录找吗?两种情况:

1):如果classpath的值结尾处有分号,在具体路径

中没有找到运行的类,会默认在当前目录再找一次。

2):如果classpath的值结果出没有分号,在具体的

路径中没有找到运行的类,不会再当前目录找。一般不指

定分号,如果没有在指定目录下找到要运行的类文件,就报

错,这样可以调试程序。

4,javac命令和java命令做什么事情呢?

要知道java是分两部分的:一个是编译,一个是运

行。

javac:负责的是编译的部分,当执行javac时,会

启动java的编译器程序。对指定扩展名的.java文件进行编

译。生成了jvm可以识别的字节码文件。也就是class文

件,也就是java的运行程序。

java:负责运行的部分.会启动jvm.加载运行时所需

的类库,并对class文件进行执行.

一个文件要被执行,必须要有一个执行的起始点,这

个起始点就是main函数.

二:java

语法基础:

1,关键字:其实就是某种语言赋予了特殊含义的单

词。

保留字:其实就是还没有赋予特殊含义,但是准备日

后要使用过的单词。

2,标示符:Java中的包、类、方法、参数和变量的

名字,可由任意顺序的大小写字母、数字、下划线和美元符

号组成,但标识符不能以数字开头,不能是Java中的保留

关键字。

•下面是合法的标识符:

yourname

your_name

_yourname

$yourname

•下面是非法的标识符:

class

HelloCareers

1),数字不可以开头。

2),不可以使用关键字。

3,常量:是在程序中的不会变化的数据。

4,变量:其实就是内存中的一个存储空间,用于存

储常量数据。

作用:方便于运算。因为有些数据不确定。所以确定

该数据的名词和存储空间。

特点:变量空间可以重复使用。

什么时候定义变量?只要是数据不确定的时候,就定

义变量。

变量空间的开辟需要什么要素呢?

1,这个空间要存储什么数据?数据类型。

2,这个空间叫什么名字啊?变量名称。

3,这个空间的第一次的数据是什么?变量的初始化

值。

变量的作用域和生存期:

变量的作用域:

作用域从变量定义的位置开始,到该变量所在的那对

大括号结束;

生命周期:

变量从定义的位置开始就在内存中活了;

变量到达它所在的作用域的时候就在内存中消失了;

数据类型:

1):基本数据类型:byte、short、int、long、float、

double^char、boolean2):引用数据类型:数组、类、接

口O

级别从低到高为:byte,char,short(这三个平

级)-->int-->float-->long-->double

自动类型转换:从低级别到高级别,系统自动转的;

强制类型转换:什么情况下使用?把一个高级别的数

赋给一个别该数的级别低的变量;

运算符号:

1)、算术运算符。

+-*/%%:任何整数模2不是0就是1,所以只要

改变被模数就可以实现开关运算。二b;

练习:高效的算出2*8=25,语句。

Ifswitchdowhilewhilefor

这些语句什么时候用?

1)、当判断固定个数的值的时候,可以使用if,也可

以使用switcho建议使用switch,效率相对较高。

switch(变量){

case值:要执行的语句;break;

?

default:要执行的语句;

}

工作原理:用小括号中的变量的值依次和case后面

的值进行对比,和哪个case后面的值相同了

就执行哪个case后面的语句,如果没有相同的则执

行default后面的语句;

细节:1):break是可以省略的,如果省略了就一直

执行到遇到break为止;

2):switch后面的小括号中的变量应该是

byte,char,short,int四种类型中的一种;

3):default可以写在switch结构中的任意位置;如

果将default语句放在了第一行,则不管expression与case

中的value是否匹配,程序会从default开始执行直到第一

个break出现。

2)、当判断数据范围,获取判断运算结果boolean类

型时,需要使用if。

3)、当某些语句需要执行很多次时,就用循环结构。

while和for可以进行互换。

区别在于:如果需要定义变量控制循环次数。建议使

用for。因为for循环完毕,变量在内存中释放。

break:作用于switch,和循环语句,用于跳出,或

者称为结束。

break语句单独存在时,下面不要定义其他语句,因

为执行不到,编译会失败。当循环嵌套时,break只跳出当

前所在循环。要跳出嵌套中的外部循环,只要给循环起名字

即可,这个名字称之为标号。

continue:只作用于循环结构,继续循环用的。

作用:结束本次循环,继续下次循环。该语句单独存

在时,下面不可以定义语句,执行不到。

6,函数:为了提高代码的复用性,可以将其定义成

一个单独的功能,该功能的体现就是java中的函数。函数

就是体现之一。

java中的函数的定义格式:

修饰符返回值类型函数名(参数类型形式参数1,

参数类型形式参数1,?){

执行语句;

return返回值;

}

当函数没有具体的返回值时,返回的返回值类型用

void关键字表示。

如果函数的返回值类型是void时,return语句可以

省略不写的,系统会帮你自动加上。

return的作用:结束函数。结束功能。

如何定义一个函数?

函数其实就是一个功能,定义函数就是实现功能,通

过两个明确来完成:

1)、明确该功能的运算完的结果,其实是在明确这个

函数的返回值类型。

2)、在实现该功能的过程中是否有未知内容参与了运

算,其实就是在明确这个函数的参数列表(参数类型&参数个

数)。

函数的作用:

1)、用于定义功能。

2)、用于封装代码提高代码的复用性。

注意:函数中只能调用函数,不能定义函数。

主函数:

1)、保证该类的独立运行。

2)、因为它是程序的入口。

3)、因为它在被jvm调用。

函数定义名称是为什么呢?

答:1)、为了对该功能进行标示,方便于调用。

2)、为了通过名称就可以明确函数的功能,为了增加

代码的阅读性。

重载的定义是:在一个类中,如果出现了两个或者两

个以上的同名函数,只要它们的参数的个数,或者参数的类

型不同,即可称之为该函数重载了。

如何区分重载:当函数同名时,只看参数列表。和返

回值类型没关系。

7,一维数组:用于存储同一类型数据的一个容器。

好处:可以对该容器中的数据进行编号,从0开始。数组用

于封装数据,就是一个具体的实体。

如何在java中表现一个数组呢?两种表现形式。

1)、元素类型变量名=new元素类型;

2)、元素类型变量名={元素1,元素2...};

3)、(source,0,dest,0,x):语句的意思就是:复制

源数组从下标0开始的x个元素到目标数组,从目标数组的

下标0所对应的位置开始存取。

4)、(数组名)为数组排序的操作,但这个方法在这个

包里面,所以在用到的时候需要先将它导入

〃二分查找法。必须有前提:数组中的元素要有序。

Java基础知识总结

写代码:

1,明确需求。我要做什么?

2,分析思路。我要怎么做?1,2,3。

3,确定步骤。每一个思路部分用到哪些语句,方法,

和对象。

4,代码实现。用具体的java语言代码把思路体现出

来。

学习新技术的四点:

1,该技术是什么?

2,该技术有什么特点(使用注意):

3,该技术怎么使用。demo

4,该技术什么时候用?testo

java概述:

1991年Sun公司的JamesGosling等人开始开发名

称为Oak的语言,希望用于控制嵌入在有线电视交换盒、

PDA等的微处理器;

1994年将Oak语言更名为Java;

Java的三种技术架构:

JAVAEE:JavaPlatformEnterpriseEdition,开发

企业环境下的应用程序,主要针对web程序开发;

JAVASE:JavaPlatformStandardEdition,完成桌

面应用程序的开发,是其它两者的基础;

JAVAME:JavaPlatformMicroEdition,开发电子

消费产品和嵌入式设备,如手机中的程序;

1,JDK:JavaDevelopmentKit,java的开发和运行

环境,java的开发工具和jreo

2,JRE:JavaRuntimeEnvironment,java程序的运

行环境,java运行的所需的类库+JVM(java虚拟机)。3,

配置环境变量:让javajdkDin目录下的工具,可以在任

意目录下运行,原因是,将该工具所在目录告诉了系统,当

使用该工具时,由系统帮我们去找指定的目录。

环境变量的配置:

1):永久配置方式:JAVA.HOME=%安装路

path-%JAVA_HOME%Din

2):临时配置方式:setpath=%path%;C:Program

FilesJavajdkDin

特点:系统默认先去当前路径下找要执行的程序,如

果没有,再去path中设置的路径下找。

classpath的配置:

1):永久配置方式:classpath=.;c:;e:

2):临时配置方式:setclasspath=.;c:;e:

注意:在定义classpath环境变量时,需要注意的情

如果没有定义环境变量classpath,java启动jvm后,

会在当前目录下查找要运行的类文件;

如果指定了classpath,那么会在指定的目录下查找

要运行的类文件。

还会在当前目录找吗?两种情况:

1):如果classpath的值结尾处有分号,在具体路径

中没有找到运行的类,会默认在当前目录再找一次。

2):如果classpath的值结果出没有分号,在具体的

路径中没有找到运行的类,不会再当前目录找。一般不指

定分号,如果没有在指定目录下找到要运行的类文件,就报

错,这样可以调试程序。

4,javac命令和java命令做什么事情呢?

要知道java是分两部分的:一个是编译,一个是运

行。

javac:负责的是编译的部分,当执行javac时,会

启动java的编译器程序。对指定扩展名的.java文件进行编

译。生成了jvm可以识别的字节码文件。也就是class文

件,也就是java的运行程序。

java:负责运行的部分.会启动jvm.加载运行时所需

的类库,并对class文件进行执行.

一个文件要被执行,必须要有一个执行的起始点,这

个起始点就是main函数.

---------------------------------------------二:java

语法基础:

1,关键字:其实就是某种语言赋予了特殊含义的单

词。

保留字:其实就是还没有赋予特殊含义,但是准备日

后要使用过的单词。

2,标示符:其实就是在程序中自定义的名词。比如

类名,变量名,函数名。包含0-9>a-z、$、_;注意:

1),数字不可以开头。

2),不可以使用关键字。

3,常量:是在程序中的不会变化的数据。

4,变量:其实就是内存中的一个存储空间,用于存

储常量数据。

作用:方便于运算。因为有些数据不确定。所以确定

该数据的名词和存储空间。

特点:变量空间可以重复使用。

什么时候定义变量?只要是数据不确定的时候,就定

义变量。

变量空间的开辟需要什么要素呢?

1,这个空间要存储什么数据?数据类型。

2,这个空间叫什么名字啊?变量名称。

3,这个空间的第一次的数据是什么?变量的初始化

值。

变量的作用域和生存期:

变量的作用域:

作用域从变量定义的位置开始,到该变量所在的那对

大括号结束;

生命周期:

变量从定义的位置开始就在内存中活了;

变量到达它所在的作用域的时候就在内存中消失了;

数据类型:

1):基本数据类型:byte、short、int、long、float、

double、char、boolean

2):引用数据类型:数组、类、接口。

级别从低到高为:byte,char,short(这三个平

级)一>int->float->long->double

自动类型转换:从低级别到高级别,系统自动转的;

强制类型转换:什么情况下使用?把一个高级别的数

赋给一个别该数的级别低的变量;

运算符号:

1)、算术运算符。

+-*/%%:任何整数模2不是0就是1,所以只要

改变被模数就可以实现开关运算。

+:连接符。

++,一

2)、赋值运算符。

二+=一=*=/-%=

3)、比较运算符。

特点:该运算符的特点是:运算完的结果,要么是

true,要么是false。

4)、逻辑运算符。但是建议使用switch,效率相对较

高。

switch(变量){

case值:要执行的语句;break;

?

default:要执行的语句;

}

工作原理:用小括号中的变量的值依次和case后面

的值进行对比,和哪个case后面的值相同了

就执行哪个case后面的语句,如果没有相同的则执

行default后面的语句;

细节:1):break是可以省略的,如果省略了就一直

执彳亍到遇到break为止;

2):switch后面的小括号中的变量应该是

byte,char,short,int四种类型中的一种;

3):default可以写在switch结构中的任意位置;如

果将default语句放在了第一行,则不管expression与case

中的value是否匹配,程序会从default开始执行直到第一

个break出现。

2)、当判断数据范围,获取判断运算结果boolean类

型时,需要使用if。

3)、当某些语句需要执行很多次时,就用循环结构。

while和for可以进行互换。

区别在于:如果需要定义变量控制循环次数。建议使

用for。因为for循环完毕,变量在内存中释放。

break:作用于switch,和循环语句,用于跳出,或

者称为结束。

break语句单独存在时,下面不要定义其他语句,因

为执行不到,编译会失败。当循环嵌套时,break只跳出当

前所在循环。要跳出嵌套中的外部循环,只要给循环起名字

即可,这个名字称之为标号。

continue:只作用于循环结构,继续循环用的。

作用:结束本次循环,继续下次循环。该语句单独存

在时,下面不可以定义语句,执行不到。

6,函数:为了提高代码的复用性,可以将其定义成

一个单独的功能,该功能的体现就是java中的函数。函数

就是体现之一。

java中的函数的定义格式:

修饰符返回值类型函数名(参数类型形式参数1,

参数类型形式参数1,?){

执行语句;

return返回值;

当函数没有具体的返回值时,返回的返回值类型用

void关键字表示。

如果函数的返回值类型是void时,return语句可以

省略不写的,系统会帮你自动加上。

return的作用:结束函数。结束功能。

如何定义一个函数?

函数其实就是一个功能,定义函数就是实现功能,通

过两个明确来完成:

1)、明确该功能的运算完的结果,其实是在明确这个

函数的返回值类型。

2)、在实现该功能的过程中是否有未知内容参与了运

算,其实就是在明确这个函数的参数列表(参数类型&参数个

数)。

函数的作用:

1)、用于定义功能。

2)、用于封装代码提高代码的复用性。

注意:函数中只能调用函数,不能定义函数。

主函数:

1)、保证该类的独立运行。

2)、因为它是程序的入口。

3)、因为它在被jvm调用。

函数定义名称是为什么呢?

答:1)、为了对该功能进行标示,方便于调用。

2)、为了通过名称就可以明确函数的功能,为了增加

代码的阅读性。

重载的定义是:在一个类中,如果出现了两个或者两

个以上的同名函数,只要它们的参数的个数,或者参数的类

型不同,即可称之为该函数重载了。

如何区分重载:当函数同名时,只看参数列表。和返

回值类型没关系。

7,数组:用于存储同一类型数据的一个容器。好处:

可以对该容器中的数据进行编号,从0开始。数组用于封装

数据,就是一个具体的实体。

如何在java中表现一个数组呢?两种表现形式。

1)、元素类型变量名=new元素类型;

2)、元素类型变量名={元素1,元素2...};

元素类型变量名=new元素类型{元素1,元素

2...);

〃二分查找法。必须有前提:数组中的元素要有序。

publicstaticinthalfSeach2(intarr,intkey){

intmin,max,mid;

min=0;

max=;

mid=(max+min)>>1;//(max+min)/2;

while(arr!=key){

if(key>arr){

min=mid+1;

}

elseif(keymax=mid-1;

if(maxreturn-1;

mid=(max+min)>>1;

}

returnmid;

java分了5片内存。

1:寄存器。2:本地方法区。3:方法区。4:栈。5:

堆。

栈:存储的都是局部变量(函数中定义的变量,函

数上的参数,语句中的变量);

只要数据运算完成所在的区域结束,该数据就会被释

放。

堆:用于存储数组和对象,也就是实体。啥是实体啊?

就是用于封装多个数据的。

1:每一个实体都有内存首地址值。

2:堆内存中的变量都有默认初始化值。因为数据类

型不同,值也不一样。

3:垃圾回收机制。

---------------------------------------------三:面向

对象:★★★★★

特点:1:将复杂的事情简单化。

2:面向对象将以前的过程中的执行者,变成了指挥

者。

3:面向对象这种思想是符合现在人们思考习惯的一

种思想。

过程和对象在我们的程序中是如何体现的呢?过程

其实就是函数;对象是将函数等一些内容进行了封装。

匿名对象使用场景:

1:当对方法只进行一次调用的时候,可以使用匿名

对象。

2:当对象对成员进行多次调用时,不能使用匿名对

象。必须给对象起名字。

在类中定义其实都称之为成员。成员有两种:

1:成员变量:其实对应的就是事物的属性。

Java基础知识总结

写代码:

1,明确需求。我要做什么?

2,分析思路。我要怎么做?1,2,3。

3,确定步骤。每一个思路部分用到哪些语句,方法,

和对象。

4,代码实现。用具体的java语言代码把思路体现出

来。

学习新技术的四点:

1,该技术是什么?

2,该技术有什么特点(使用注意):

3,该技术怎么使用。demo

4,该技术什么时候用?testo

java概述:

1991年Sun公司的JamesGosling等人开始开发名

称为Oak的语言,希望用于控制嵌入在有线电视交换盒、

PDA等的微处理器;

1994年将Oak语言更名为Java;

Java的三种技术架构:

JAVAEE:JavaPlatformEnterpriseEdition,开发

企业环境下的应用程序,主要针对web程序开发;JAVASE:

JavaPlatformStandardEdition,完成桌面应用程序的开

发,是其它两者的基础;JAVAME:JavaPlatformMicro

Edition,开发电子消费产品和嵌入式设备,如手机中的程

序;

1,JDK:JavaDevelopmentKit,java的开发和运行

环境,java的开发工具和jreo

2,JRE:JavaRuntimeEnvironment,java程序的运

行环境,java运行的所需的类库+JVM(java虚拟机)。3,

配置环境变量:让javajdkDin目录下的工具,可以在任

意目录下运行,原因是,将该工具所在目录告诉了系统,当

使用该工具时,由系统帮我们去找指定的目录。

环境变量的配置:

1):永久配置方式:JAVAJ0ME=%安装路径%Javajdk

path=%JAVA„HOME%Din

2):临时配置方式:setpath=%path%;C:Program

FilesJavajdkDin

特点:系统默认先去当前路径下找要执行的程序,如

果没有,再去path中设置的路径下找。classpath的配置:

1):永久配置方式:classpath二.;c:;e:

2):临时配置方式:setclasspath=.;c:;e:

注意:在定义classpath环境变量时,需要注意的情

如果没有定义环境变量classpath,java启动jvm后,

会在当前目录下查找要运行的类文件;如果指定了

classpath,那么会在指定的目录下查找要运行的类文件。

还会在当前目录找吗?两种情况:

1):如果classpath的值结尾处有分号,在具体路径

中没有找到运行的类,会默认在当前目录再找一次。

2):如果classpath的值结果出没有分号,在具体的

路径中没有找到运行的类,不会再当前目录找。一般不指

定分号,如果没有在指定目录下找到要运行的类文件,就报

错,这样可以调试程序。

4,javac命令和java命令做什么事情呢?

要知道java是分两部分的:一个是编译,一个是运

行。

javac:负责的是编译的部分,当执行javac时,会

启动java的编译器程序。对指定扩展名的.java文件进行编

译。生成了jvm可以识别的字节码文件。也就是class文

件,也就是java的运行程序。

java:负责运行的部分.会启动jvm.加载运行时所需

的类库,并对class文件进行执行.

一个文件要被执行,必须要有一个执行的起始点,这

个起始点就是main函数.

---------------------------------------------二:java

语法基础:

1,关键字:其实就是某种语言赋予了特殊含义的单

词。

保留字:其实就是还没有赋予特殊含义,但是准备日

后要使用过的单词。

2,标示符:其实就是在程序中自定义的名词。比如

类名,变量名,函数名。包含0-9、a-z.$、_;注意:

1),数字不可以开头。

2),不可以使用关键字。

3,常量:是在程序中的不会变化的数据。

4,变量:其实就是内存中的一个存储空间,用于存

储常量数据。

作用:方便于运算。因为有些数据不确定。所以确定

该数据的名词和存储空间。

特点:变量空间可以重复使用。

什么时候定义变量?只要是数据不确定的时候,就定

义变量。

变量空间的开辟需要什么要素呢?

1,这个空间要存储什么数据?数据类型。

2,这个空间叫什么名字啊?变量名称。

3,这个空间的第一次的数据是什么?变量的初始化

值。

变量的作用域和生存期:

变量的作用域:

作用域从变量定义的位置开始,到该变量所在的那对

大括号结束;

生命周期:

变量从定义的位置开始就在内存中活了;

变量到达它所在的作用域的时候就在内存中消失了;

数据类型:

1):基本数据类型:byte、short、int、long、float、

double,char、boolean

2):引用数据类型:数组、类、接口。

级别从低到高为:byte,char,short(这三个平

级)一>int-->float->long->double

自动类型转换:从低级别到高级别,系统自动转的;

强制类型转换:什么情况下使用?把一个高级别的数

赋给一个别该数的级别低的变量;

运算符号:

1)、算术运算符。

+-*/%%:任何整数模2不是0就是1,所以只要

改变被模数就可以实现开关运算。

+:连接符。

++,一

2)、赋值运算符。

-+=-=*=/-%=

3)、

这些语句什么时候用?

1)、当判断固定个数的值的时候,可以使用if,也可

以使用switcho

但是建议使用switch,效率相对较高。

switch(变量){

case值:要执行的语句;break;

?

default:要执行的语句;

}

工作原理:用小括号中的变量的值依次和case后面

的值进行对比,和哪个case后面的值相同了

就执行哪个case后面的语句,如果没有相同的则执

行default后面的语句;

细节:1):break是可以省略的,如果省略了就一直

执行到遇到break为止;

2):switch后面的小括号中的变量应该是

byte,char,short,int四种类型中的一种;

3):default可以写在switch结构中的任意位置;如

果将default语句放在了第一行,则不管expression与case

中的value是否匹配,程序会从default开始执行直到第一

个break出现。

2)、当判断数据范围,获取判断运算结果boolean类

型时,需要使用if。

3)、当某些语句需要执行很多次时,就用循环结构。

while和for可以进行互换。

区别在于:如果需要定义变量控制循环次数。建议使

用for。因为for循环完毕,变量在内存中释放。

break:作用于switch,和循环语句,用于跳出,或

者称为结束。

break语句单独存在时,下面不要定义其他语句,因

为执行不到,编译会失败。当循环嵌套时,break只跳出当

前所在循环。要跳出嵌套中的外部循环,只要给循环起名字

即可,这个名字称之为标号。

continue:只作用于循环结构,继续循环用的。

作用:结束本次循环,继续下次循环。该语句单独存

在时,下面不可以定义语句,执行不到。

6,函数:为了提高代码的复用性,可以将其定义成

一个单独的功能,该功能的体现就是java中的函数。函数

就是体现之一。

java中的函数的定义格式:

修饰符返回值类型函数名(参数类型形式参数1,

参数类型形式参数1,?){

执行语句;

return返回值;

}

当函数没有具体的返回值时,返回的返回值类型用

void关键字表示。

如果函数的返回值类型是void时,return语句可以

省略不写的,系统会帮你自动加上。

return的作用:结束函数。结束功能。

如何定义一个函数?

函数其实就是一个功能,定义函数就是实现功能,通

过两个明确来完成:

1)、明确该功能的运算完的结果,其实是在明确这个

函数的返回值类型。

2)、在实现该功能的过程中是否有未知内容参与了运

算,其实就是在明确这个函数的参数列表(参数类型&参数个

数)。

函数的作用:

1)、用于定义功能。

2)、用于封装代码提高代码的复用性。

注意:函数中只能调用函数,不能定义函数。

主函数:

1)、保证该类的独立运行。

2)、因为它是程序的入口。

3)、因为它在被jvm调用。

函数定义名称是为什么呢?

答:1)、为了对该功能进行标示,方便于调用。

2)、为了通过名称就可以明确函数的功能,为了增加

代码的阅读性。

重载的定义是:在一个类中,如果出现了两个或者两

个以上的同名函数,只要它们的参数的个数,或者参数的类

型不同,即可称之为该函数重载了。

如何区分重载:当函数同名时,只看参数列表。和返

回值类型没关系。

7,数组:用于存储同一类型数据的一个容器。好处:

可以对该容器中的数据进行编号,从0开始。数组用于封装

数据,就是一个具体的实体。

如何在java中表现一个数组呢?两种表现形式。

1)、元素类型变量名=new元素类型;

2)、元素类型变量名={元素1,元素2...};

元素类型变量名=new元素类型{元素1,元素

2...};

〃二分查找法。必须有前提:数组中的元素要有序。

publicstaticinthalfSeach2(intarr,intkey){

intmin,max,mid;

min=0;

max二;

mid=(max+min)>>1;//(max+min)/2;

while(arr!=key){

if(key>arr){

min=mid+1;

}

elseif(keymax=mid-1;

if(maxreturn-1;

mid=(max+min)>>1;

returnmid;

java分了5片内存。

1:寄存器。2:本地方法区。3:方法区。4:栈。5:

堆。

栈:存储的都是局部变量(函数中定义的变量,函

数上的参数,语句中的变量);

只要数据运算完成所在的区域结束,该数据就会被释

放。

堆:用于存储数组和对象,也就是实体。啥是实体啊?

就是用于封装多个数据的。

1:每一个实体都有内存首地址值。

2:堆内存中的变量都有默认初始化值。因为数据类

型不同,值也不一样。

3:垃圾回收机制。

三:面向

对象:★★★★★

特点:1:将复杂的事情简单化。

2:面向对象将以前的过程中的执行者,变成了指挥

者。

3:面向对象这种思想是符合现在人们思考习惯的一

种思想。

过程和对象在我们的程序中是如何体现的呢?过程

其实就是函数;对象是将函数等一些内容进行了封装。

匿名对象使用场景:

1:当对方法只进行一次调用的时候,可以使用匿名

对象。

2:当对象对成员进行多次调用时,不能使用匿名对

象。必须给对象起名字。

在类中定义其实都称之为成员。成员有两种:

1:成员变量:其实对应的就是事物的属性。

2:成员函数:其实对应的就是事物的行为。

所以,其实定义类,就是在定义成员变量和成员函数。

但是在定义前,必须先要对事物进行属性和行为的分析,才

可以用代码来体现。

JAVA基础知识总结

第一章Java入门:

1.java诞生:

1995年5月23日Sun公司发布了版本;作者:James

Gosling.

JAVAME微型版

手机软件开发

JAVASE标准版

桌面应用程序

JAVAEE企业版

企业级应用开发

2.java语言特点:

1.简单

没有C、C++中的头文件,指针,运算符重载

2.面向对象

可以开发出较大型的应用程序

3.分布式

通过网络访问应用程序,突破空间限制

4.健壮性(编译时错误检测)

消除有出错倾向的状态:指针

5.安全性(蠕虫病毒)

禁止运行时堆栈溢出、内存空间未授权读写

6.可移植性

JVM

3.JAVA的特性、核心机制:

特性:封装:对外部不可见,保护类中的操作不被

外部直接访问

属性私有化,提供公共的get、set方法

封装的好处:

L数据更安全,可以在方法内增加验证

2.可以让调用者不去关心实现的细节,重用

继承:扩张类的功能

多态:

是允许将父对象引用一个子对象的技术

Employeeemployee=manager;

允许父类对象来引用子类对象,但是实际运行过程中

调用的是子

类的方法或者属性

编译时调用父类方法,运行时调用的是实际引用类型

的方法,这

种现象叫做动态绑定

多态现象:运行时多态、编译时多态

L编译时多态:方法的重载(不建议举例)

2.运行时多态:方法的覆盖(建议举例)

核心机制:虚拟机(JVMjavavirtualmachine)垃

圾回收机制garbagecollector

:1995年SUN公司98年接下来是目前已经更名为

JAVA正在使用的是java版本.

JDK安装目录介绍:

Bin编译器和工具

Demo演示

DocsHTML格式的类库文档

Include用于编译本地方法的文件

Jrejava运行环境文件

Lib类库文件

Src类库源文件

运行环境变量配置:

JAVA_H0ME:JDK安装目录,方便在后面两个环境变量

的配置中直接被

调用即可

path:%JAVA_HOME%Din列出可执行文件的搜素路径

classpath:%JAVAHOME%lib

%JAVA_H0ME%

是java加载类的路径,只有在classpath设置的路

径中的类才能被加载

中注释:

1.单行注释:

//

2.多行注释:

/**/

3.文档注释

/***/

通过javadoc命令将文档注释提取出来生成java帮

助文档:Java的三种注释:

与publicclass区别:

如果一个类声明的时候使用了public进行声明,则

类名称必须与文件名称完全一致,如果类的声明使用了

class的话,则类名称可以与文件名称不一致,但执行的时

候肯定执行的是生成后的类名称。

第二章标示符,运算符

1.标示符:在java语言中用来给一个类、变量或方

法命名的符号

标示符的命名规则:

1.以字母,或“$”符号开头

2.可以包含字母、、"$”和数字符号

3.大小写敏感

4.不能与保留关键字冲突

5.没有长度限制

Java中命名规范:

1.类名,接口名:每个单词的首字母应该大写

2.字段、方法以及对象:第一个单词首字母应小写,

其他单词首字母大写

3.常量:全部用大写字母表示

包:它们全都字母小写

5.命名要做到见名知意

2.运算符:

1.算数运算符:

2.自增switch(){case}

switchcase:

说明:

1.表达式expression可以是以下四种基本数据类型

和枚举类型(byte,short,int,char)

子句中的值必须是常量,而且所有case子句中的值

应是不同的。

通常与break语句联用,以保证多路分支的正确实现,

多个case可以公用一组执行语句。

循环语句:循环语句for

循环语句

循环语句

和continue语句

b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论