李兴华魔乐科技Java笔记JAVASE基础知识Word文档格式.docx
- 文档编号:21747451
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:49
- 大小:867.24KB
李兴华魔乐科技Java笔记JAVASE基础知识Word文档格式.docx
《李兴华魔乐科技Java笔记JAVASE基础知识Word文档格式.docx》由会员分享,可在线阅读,更多相关《李兴华魔乐科技Java笔记JAVASE基础知识Word文档格式.docx(49页珍藏版)》请在冰豆网上搜索。
支持、、等公司支持。
要收购公司,是为了形成:
中间件+编程语言+开发工具+操作系统+数据库,完整商用体系;
从历史发展来看商用体系:
++()++2;
++:
++++;
开源项目:
++++()
一旦形成了这样的开发体系,则直接针对于微软了。
在收购公司之前最早是由提出收购的,因为主要的软件产品线都在上,之所以现在的这么的火暴,主要的原因还在于的推广。
的典型标志:
只搞理论研究从来不搞实践。
语言最早是在1991年的时候推出的,其前身是语言,这门语言的主要目的是为了竞争一个的项目,这个项目就非常类似于今天的嵌入式开发,可以通过邮件控制家电的运行,原本公司的设计人员打算使用进行开发的,但是后来考虑到的复杂性,所以使用了语言开发了一个新的平台——(橡树),但是遗憾的是此平台并没有竞争成功,被网景公司的的平台所打败,从此之后基本上就无家可归了。
网景公司是靠浏览器技术发展的,但是其浏览器的市场被微软抢走了,在90年代的时候网景公司的浏览器相当的流行,但是就当其达到顶峰的时候内部开始出现问题了,这个时候大部分的人不再去研究浏览器的技术了,而只是专注于市场的推广了,而就在这个时候微软一直注意着提升浏览器的技术,所以慢慢的发展势头就盖过了网景公司了。
现在的网景公司的主要依靠的是浏览器来重新抢夺市场。
通过了学习浏览器技术之后,公司的设计人员使用了平台开发出了一套自己的浏览器技术——。
一直到了1995年的时候,才正式的将更名为,同时推出了1.0开发平台,最早的是在浏览器中运行的一种技术——。
在1998年的时候推出了1.2,同时将更名为2;
后来又到了2005年,十周年大会上,推出了1.5,将更名为J25.0;
的主要开发公司是公司,那么公司的全名:
斯坦伏大学网络,最早的时候是靠卖硬件赚钱的,,主要是依靠小型机,其中网上书店就是采用了的小型机。
斯坦伏大学除了一个扬志远,其创办了公司,、,1976年的时候的一个工程师:
沃滋尼阿克发明了世界上第一台机,可是遗憾是公司没有采纳这个东西,但是后来此技术被一个独具慧眼的人看见了——乔布斯,所以在80年的时候的电脑卖的相当的好。
最早的有如下的几个技术的分支:
J2:
为的核心的基础版本,安装完成之后则自动具备此环境;
在2005年之后J2更名为;
是在J2的基础之上发展起来的,主要是完成手机的嵌入式开发;
是在J2基础之上发展的,主要完成企业的平台开发,也是现在的主要技术方向;
在2005年之后J2更名为。
语言作为以上的所有开发平台的技术根本,有如下的几个特点:
1、语言足够简单;
2、中存在多线程的处理机制,这也是的一大特点,而且也是为数不多的支持多线程的开发语言;
3、自动的垃圾收集机制;
4、可移植性;
5、避免了指针等复杂问题的操作,而使用了更加简单的引用方式来解决同类问题。
在语言中有自己的运行机制,运行机制如下图所示。
C语言中每一个程序编译完成之后会自动生成一个*的文件,从而可以直接执行,但是不一样,因为中的所有运行都依靠两种方式完成:
所有的程序的文件后缀都是*,但是这并不是真正要使用的程序而需要将其编译;
将编译成的*文件直接放在电脑上进行解释,但是此电脑可不是一台物理存在的电脑,而是一台虚拟的电脑,而此电脑就称为——虚拟机。
3.3、的可移植性实现(重点)
的可移植性完全体现在上,通过去使用不同的操作系统。
现在的程序只认,而由去适应不同的操作系统,这样一来,程序在各个操作系统之间就可以实现任意的移植操作,从而实现可移植性,但是这种执行的方式其性能上呢肯定不如直接在固定的操作系统上方便,可是这样做的好处是方便开发。
3.4、开发环境搭建——(重点)
要想进行程序的开发,则首先必须将配置到位,现在使用最广泛的版本是1.5,以后的开发中记住了,只使用稳定版本,而不要使用最新版本。
本次使用的是1.6版本,直接从上下载即可。
现在如果直接启动了的安装程序,则显示的语言是中文,因为属于多国语言版,所以要想更准确的发现各种错误信息,建议将本机操作系统的语言环境设置为英文。
控制面板:
区域和语言选项。
选择完成之后,直接选择确定,再重新启动安装程序界面。
安装完成之后下面要进入到的配置,因为在中需要程序和解释,而编译和解释的命令:
、,但是这两个命令由于本身并不属于,所以默认情况下根本就无法找到,此时,就需要将安装目录下的文件夹配置到路径之中。
我的电脑属性高级选项配置环境
配置完成之后必须重新启动命令行方式才可以将新的内容加载进来。
3.5、编写第一个程序(重点)
下面使用编写第一个应用程序,目的是在屏幕上输出“”。
范例:
编写
{
([]){
("
!
!
"
);
}
}
程序编写完成之后,按照如下的步骤进行执行:
1、编译程序:
,编译完成之后出现了一个*的文件;
2、解释程序:
,但是此时出现了如下的错误信息:
"
:
(50.0)
现在提示的错误信息是:
错误的版本,查看现在使用的版本:
–
显示信息:
1.4.2_03"
()2,(1.4.2_0302)
()(1.4.2_0302,)
现在显示的信息是1.4版本,那么我们配置的1.6呢?
实际上这个出现的错误信息完全是由,因为本身已经自带了,因为许多的一些应用程序都是开发的,所以运行,就必须有的支持。
但是要想解决此问题,现在有两种方式:
在属性之后,删除掉所有与的有关的配置;
D:
\\\10.1.0\1\\1.4.2\\:
\\\10.1.0\1\\1.4.2\;
将所要使用新的配置放在的最前面:
因为读取的时候采用的是顺序的方式。
3.6、第一个程序的相关解释(重点)
第一个程序编写完成之后,下面来看一下程序的组成部分,所有的程序都是定义在一个类之中的,而此出使用的类名称是。
{}
任何的程序都是从主方法开始运行的,在中的主方法定义如下;
([]){}
以上是程序运行的基本的结构,而要想在屏幕上进行输出的话,则必须使用如下的语句:
("
以上的输出的表示是输出之后加一个换行,如果现在没有使用(),而使用的是()的方法就表示不换行。
但是现在在使用的时候也有一个注意点,所有的程序都是由主方法开始执行,但是主方法要定义在一个类中,而且关于类的声明现在有两种形式:
声明:
文件名称(*)必须与声明的类名称保持一致;
文件名称可以与类名称不一致,但是在执行的时候必须执行生成的类名称;
在一个*文件之中,可以同时定义多个,但是只能有一个,但是编译之后文件夹中将生成多个*文件。
而且可以发现,现在在编写类名称的时候采用的格式是,每个单词的首字母大写,例如:
3.7、环境属性(重点)
在默认的情况下,一个程序编译完成之后,只能在其所在的目录中解释此程序。
如果现在在不同的路径下也想继续访问*文件的话,则只能依靠环境属性的支持了,设置方法:
路径
将d:
\作为
\
现在设置完成之后,即使当前的路径中不包含了*文件,但是也可以依照着找到所指定路径中的*文件,也就是现在的程序运行:
解释找到环境所设置的路径解释*文件。
但是这样一来也会出现一个问题,如果将到处设置的话也很麻烦,所以一般情况下都会将设置为当前所在的文件夹中查找所需要的*文件,也就是当前目录查找,设置为“.”即可。
.
这种设置实际上也就是默认的设置,但是有些时候这种设置有可能出现问题,则只能按照如上方式进行了,如果觉得每次这样设置过于麻烦的话,也可以直接通过环境属性完成。
这样的话,每次就不用重新设置了,以后有新的也可以在此处直接完成配置,具体的这些操作将在以后的程序讲解中出现。
3.8、标识符及关键字(重点)
中的变量及类名称的组成也是有标识符的要求的,这些要求如下:
只能由字母、数字、下划线、$所组成,其中不能以数字开头,不能是中的关键字(保留字)。
这些保留字没有任何的必要去背,这些随着程序的深入而逐步都会接触到,但是这些关键字之中也有如下的几个注意点:
从版本的发展来讲:
1.4之后增加了一个关键字;
1.5之后增加了一个关键字;
以上的关键字之中,有两个未使用到的保留字:
、;
有特殊含义的标记(严格讲不能算做关键字):
、、;
3.9、数据类型(重点)
任何的编程语言都无法回避数据类型的问题,在之中数据类型一共分为两大类:
基本数据类型:
传递是一个个具体的数值;
数值型:
整型:
、、、
浮点型:
、
字符型:
布尔型:
引用数据类型:
就类似于C语言中的指针传递,传递的是内存地址;
数组
类
接口
3.9.1、基本型数据
每种基本数据类型都有其自己的取值范围和默认值,下面通过如下的表来列出。
.
基本数据类型
取值范围
默认值(不可靠)
1
-128~127
2
-32768~32767
3
-2147483648~2147483647
4
-92233728~92233727
5
1.445~3.4028235E38
0.0
6
4.9324~1.7976931348623157E308
7
8
-
'
\u0000'
从以上的取值范围来讲,的范围是最大的,所以使用几乎可以装下全宇宙最大的一个数字。
这些基本类型可以直接产生变量并进行计算。
定义整型数据
x=1;
y=2;
(x+y);
但是有一点必须注意的是,在语言之中,一个数字的默认类型是型的数据,但是在进行这种运算的时候也有一个问题,就是如果数据已经超过了的范围,则有可能出现数据的溢出问题。
=;
取得的最大值
取得的最小值
(+1);
(-1);
如果已经是最大值了,则继续进行相加操作会变为最小值,如果已经是最小值了,则再相减就成为了最大值。
如果现在要想保持住一个比较合理的做法,则最好的方式是扩大数据的范畴,因为在之中,所有范围小的数据可以自动向范围大的数据转换。
(+1L);
x=,x1;
(-1L);
自动的数据类型转换是由位数低的向位数高的转换,但是如果现在要想将位数高的向位数低的转换,则必须采用强制手段。
x=1L;
y=()x位数大的向位数小的转换,需要强制
=190;
b=();
(b);
数据溢出
思考题:
请说出以下的答案
(11+1l);
一定要注意了,表示的“L”和“l”是一个含义。
如果要想表示出小数的话,则可以使用和,但是默认的一个小数其类型是。
d1=1902.3345;
(d1+10);
如果现在一个小数要使用接收的话,则必须加上一个字母“f”(“F”),这样表示将变为。
d1=1902.3345F;
但是有些时候在计算上也有一写注意点,例如:
除法操作。
现在使用整型除法
=10;
=3;
(/);
因为没有小数
(/());
将一个类型变为
除了这些操作之外,在定义变量的时候也有一个注意点,即:
一个变量定义的时候必须声明默认值,但是这种做法要分不同的版本:
1.5之后此种做法正确
x;
x=10;
(x);
但是在1.4和以前这种做法都是错误的,而且根本就无法编译通过。
在以后定义变量的时候永远要给出默认值。
在基本类型之中,还有字符型的数据,可是字符型和型是可以互相转换的,而且一个字符要使用“'
”声明。
定义字符
c='
A'
;
(c);
和型互相转换
x=c;
>
c=()x;
在C语言之中,这种转换后的数字实际上就是码,但是在之中所有的编码是采用的编码,而编码中兼容了码。
面试题:
一个字符能否保存一个中文呢?
阳'
以上程序在编译的时候出现了错误的信息,但是之所以会存在错误信息主要的原因是因为现在的语言环境是英文,而如果换到了中文的语言环境下,则就可以了。
之所以可以保存主要的原因是采用的十六进制编码,则此编码可以包含世界上所有的文字。
在基本数据类型有一个表示真与假的功能,就是型的内容,此类型只有两种取值:
、,而且此类型大部分情况下都是用于程序逻辑的实现上的。
(){等价于:
("
}
3.9.2、初窥
在数据库的学习之中曾经学习过,要是想表示出一个人的姓名肯定是字符串,所以字符串在中就可以使用来定义了,可是是一个类,只是这个类使用起来即特殊也方便。
="
张三"
();
而且字符串中也可以使用“+”进行字符串的连接。
"
,你好"
连接字符串
=+"
信息:
+);
但是有一点也必须注意的是,如果任何的数据类型遇到了,则所有的数据类型都将变为字符串。
计算结果:
(+x+y);
(+(x+y));
3.10、运算符(重点)
数学运算符:
+、-、*、/、%;
简便运算符:
、、、、….;
逻辑运算符:
、&
、、|、!
;
关系运算符:
>
、>
=、<
、<
=、;
位运算符:
&
、|、^、~;
以下代码不能在开发中使用
x=0;
x-x+x-10;
但是对于逻辑运算符有与和或两个,但是却分为两组,这两组分别来看,再看之前,先来观察以下一道程序。
(10/00);
这种代码一旦执行肯定要出现错误,但是下面就以上面的代码作为操作的一个点。
观察与的操作,与的操作指的是所有的条件必须都满足
(12&
10/00){
现在可以发现,两个条件都进行了判断,但是从实际来讲,第一个判断条件已经是了,那么既然是的话,则以后再怎么验证,结果都只能是,而这种&
却将所有的条件都判断了,肯定不合适,所以在之中提供了短路与操作——。
(1210/00){
因为现在第一个条件已经不满足了,所以后面的条件无论如何判断最终的结果都是,所以,将其全部判断就没有意义了。
观察或的操作,有一个操作条件满足,则一切都满足。
(11|10/00){
现在的普通“|”会将所有的条件都进行判断,理论上如果第一是的话,则后面无论如何的判断最终结果都是,那么有一个满足条件就完了,后面判断就没有意义了,现在就可以使用短路或完成。
(1110/00){
在实际的开发中就使用“”和“”完成。
三目运算符
y=20;
=x>
y?
x:
y;
位运算:
在开发中出现较少,但是作为知识点需要先掌握一下
在进行位运算之前必须先把握一个概念:
十进制变为二进制数据。
除2取余,倒着取数据。
5101
÷
2
2…1^
2|
1…0|
2|
0…1|
但是在之中整型的数据长度是32位,所以以上的数据如果严格来讲,变为二进制是:
0000000000
在中提供的位运算符:
、|、^、~、>
<
观察与操作
x=13;
y=15;
(x&
y);
下面使用二进制的方式分析以上的程序:
13的二进制:
00000000000
15的二进制:
&
操作:
0000000000013
或操作
x=9;
y=7;
(x|y);
继续使用二进制分析:
9的二进制:
7的二进制:
|操作:
0000000000015
观察移位操作,但是需要注意的是,移位之后的原数据内容不改变
(x<
2);
分析以上的数据操作:
向左移两位:
0000000000036
要求以最快的方式计算出2的3次方——靠移位最快
x=2;
3.11、程序结构(重点)
程序的结构主要包括:
顺序、分支、循环等操作。
分支:
循环:
、、…
使用…判断
(>
=0<
=12){
小P孩。
}(>
12<
=18){
小少年。
18<
=150){
成年了"
}{
您不是人了。
。
这种的判断是可以直接使用型的数据完成的,同样,对于多条件判断,也可以使用,但是可以判断的内容只能数字、字符、枚举。
=1;
(){
0:
{
("
***结果是0"
;
}
1:
***结果是1"
}
2:
***结果是2"
:
没有满足条件的地方。
循环程序肯定是必须的,实际上任何语言的学习之中,循环是一大难关,循环有如下几点需要注意:
循环要注意循环体的操作;
循环的时候要考虑到死循环的问题;
考虑到循环条件的变更。
1~100累加——循环
=0;
=100){判断条件
x;
累加
修改循环条件
1~100累加——…循环
{判断条件
}(x<
=100);
(1;
x<
=100;
){
}
对于循环的使用:
在实际之中循环要比…使用更多;
如果不知道循环次数的时候使用,而知道循环次数的时候使用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 李兴华魔乐 科技 Java 笔记 JAVASE 基础知识