发表时间:2022-03-25来源:网络
一.JAVA概述
1.JAVA发展简史
1991年,James Gosling在SUN公司的工程师小组想要设计这样一种小型计算机语言。该语言主要用于像电视盒这样的消费类电子产品。另外,由于不同的厂商选择不同的CPU和操作系统,因此,要求该语言不能和特定的体系结构绑在一起,要求语言本身是中立的,也就是跨平台的。所以,将这个语言命名为“Green”,类似于绿色软件的意思。后来,改名为Oak,橡树的意思。改名后发现已经有一种语言叫这个名字了,再改名叫Java。
1991年,SUN公司的Green项目,Oak
1995年,推出Java测试版
1996年,JDK1.0
1997年,JDK1.1
1998年,JDK1.2,大大改进了早期版本缺陷,是一个革命性的版本,更名为Java2。
2004年,J2SE 5.0 (1.5.0) Tiger老虎
2006年,J2SE 6.0 (1.6.0) Mustang野马
2011年,JavaSE7.0 Dolphin海豚
2014年,JavaSE8.0
2.JAVA的核心优势
人们发现连接到Internet的计算机各式各样,有IBM PC、苹果机、各种服务器等等,不仅硬件CPU不同,操作系统也不同,整个的网络环境非常复杂。这个时候,程序员们希望他们编写的程序能够运行在不同的机器,不同的环境中,这需要一种体系中立的语言(即跨平台)。Java的研发小组忽然发现他们用于小范围的语言也可以适应Internet这个大环境。
跨平台是Java语言的核心优势,赶上最初互联网的发展,并随着互联网的发展而发展,建立了强大的生态体系,目前已经覆盖IT各行业的“第一大语言”,是计算机界的“英语”。
3.JAVA的特性
跨平台性这是Java的核心优势。Java在设计时就很注重移植和跨平台性。比如:Java的int永远都是32位。不像C++可能是16,32,可能是根据编译器厂商规定的变化。这样的话程序的移植就会非常麻烦
安全性Java适合于网络/分布式环境,为了达到这个目标,在安全性方面投入了很大的精力,使Java可以很容易构建防病毒,防篡改的系统。
面型对象面向对象是一种程序设计技术,非常适合大型软件的设计和开发。由于C++为了照顾大量C语言使用者而兼容了C,使得自身仅仅成为了带类的C语言,多少影响了其面向对象的彻底性!Java则是完全的面向对象语言。
简单性Java就是C++语法的简化版,我们也可以将Java称之为“C++-”。跟我念“C加加减”,指的就是将C++的一些内容去掉;比如:头文件,指针运算,结构,联合,操作符重载,虚基类等等。同时,由于语法基于C语言,因此学习起来完全不费力。
高性能Java最初发展阶段,总是被人诟病“性能低”;客观上,高级语言运行效率总是低于低级语言的,这个无法避免。Java语言本身发展中通过虚拟机的优化提升了几十倍运行效率。比如,通过JIT(JUST IN TIME)即时编译技术提高运行效率。 将一些“热点”字节码编译成本地机器码,并将结果缓存起来,在需要的时候重新调用。这样的话,使Java程序的执行效率大大提高,某些代码甚至接待C++的效率。
因此,Java低性能的短腿,已经被完全解决了。业界发展上,我们也看到很多C++应用转到Java开发,很多C++程序员转型为Java程序员。
分布式Java是为Internet的分布式环境设计的,因为它能够处理TCP/IP协议。事实上,通过URL访问一个网络资源和访问本地文件是一样简单的。Java还支持远程方法调用(RMI,Remote Method Invocation),使程序能够通过网络调用方法。
多线程多线程的使用可以带来更好的交互响应和实时行为。 Java多线程的简单性是Java成为主流服务器端开发语言的主要原因之一。
健壮性Java是一种健壮的语言,吸收了C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)。Java程序不可能造成计算机崩溃。即使Java程序也可能有错误。如果出现某种出乎意料之事,程序也不会崩溃,而是把该异常抛出,再通过异常处理机制加以处理。
4.JAVA应用程序的运行机制
计算机高级语言的类型主要有编译型和解释型两种,而Java 语言是两种类型的结合。
Java首先利用文本编辑器编写 Java源程序,源文件的后缀名为.java;再利用编译器(javac)将源程序编译成字节码文件,字节码文件的后缀名为.class; 最后利用虚拟机(解释器,java)解释执行。

###############################################################
二.JAVA运行环境及开发环境
1.JVM,JRE,JDK
JVM(Java Virtual Machine)就是一个虚拟的用于执行bytecode字节码的”虚拟计算机”。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。JVM负责将Java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。
不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。 Java虚拟机是实现跨平台的核心机制。
Java Runtime Environment (JRE)-JAVA运行环境 包含:Java虚拟机、库函数、运行Java应用程序所必须的文件。
Java Development Kit (JDK)包含-JAVA开发环境-包含JRE,以及增加编译器和调试器等用于程序开发的文件。
JDK包含JRE,JRE包含JVM。
2.JDK的下载与安装
打开链接或者搜索Oracle甲骨文官网都可以下载,
打开链接,点击屏幕中间的java图标,勾选上同意协议,这里要注意下载的JDK要与自己系统的型号符合--64位系统x86和x64的都可以下载;32位系统只能下载x86!!!!!不然无法使用。下载安装一路同意,建议默认文件夹就行。当然也可以自己选择。
3.环境变量Path的配置
环境变量是在操作系统中一个具有特定名字的对象, 它包含了一个或者多个应用程序所将使用到的信息。
Path是一个常见的环境变量,它告诉操作系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下寻找此程序外,还应到哪些目录下寻找。
右键点击我的电脑属性高级系统设置环境变量这里首先新建一个环境变量,便于以后其他软件用到JDK-点击新建系统变量,名称为JAVA_HOME,路径为JDK的安装路径复制粘贴即可。双击Path-新建-输入%JAVA_HOME%\bin-确定。如果是Win7系统,把这个内容放到最前面即可。4.测试JDK是否安装成功
进入命令行窗口,开始菜单搜索框输入“cmd”即可。在窗口中输入命令“java -version ”,回车。出现JDK版本号等信息,则说明JDK安装成功。
##############################################################
三.开发第一个JAVA程序“Hello World!”
可在d盘下建立文件夹mycode,用于保存学习的代码。保存路径建议为:”d:/mycode”。
1.使用记事本编写程序
打开记事本,输入如下代码:public class Hello{public static void main(String[] args){System.out.println("Hello World!");}} 保存到刚刚设置好的mycode文件夹里,文件名为Hello,扩展名为.java(注意大小写,标点符号必须为英文边角符号!!!!)打开控制台打开命令行窗口输入D:进入d盘输入cd mycode进入mycode文件夹输入javac Hello.java编译输入java Hello执行java程序2.第一个程序常见问题
常见问题-1:提示“javac不是内部或外部命令……”
出错原因:Path变量配置错误导致没有找到javac命令
解决方案:细心重新设置Path,配置完成后需要重新输入cmd打开命令行窗口。
常见问题-2:文件夹中可以看到Welcome.java文件,在编译时出现’javac 找不到文件……’
出错原因:可能是操作系统显示设置的问题,隐藏了文件的扩展名。
解决方案:打开我的电脑窗口,选择【组织】【文件夹和搜索选项】【查看】,去掉“隐藏已知文件夹类型的扩展名”复选框中的对勾,看到文件的实际名称为Welcome.java.txt,将后缀后.txt去掉。
3.写第一个程序的总结
1.Java对大小写敏感,如果出现了大小写拼写错误,程序无法运行。
2.关键字public被称作访问修饰符(access modifier),用于控制程序的其它部分对这段代码的访问级别。
3.关键字class 的意思是类。Java是面向对象的语言,所有代码必须位于类里面。
4.一个源文件中至多只能声明一个public的类,其它类的个数不限,如果源文件中包含一个public 类,源文件名必须和其中定义的public的类名相同,且以“.java”为扩展名。
5.一个源文件可以包含多个类class。6.正确编译后的源文件,会得到相应的字节码文件,编译器为每个类生成独立的字节码文件,且将字节码文件自动命名为类的名字且以“.class”为扩展名。
7.main方法是Java应用程序的入口方法,它有固定的书写格式:public static void main(String[] args) {…}
8.在Java中,用花括号划分程序的各个部分,任何方法的代码都必须以“{”开始,以“}”结束, 由于编译器忽略空格,所以花括号风格不受限制。
9.Java中每个语句必须以分号结束,回车不是语句的结束标志,所以一个语句可以跨多行。
(常用的DOS命令:cd 进入一个目录;cd ..进入父目录;dir查看本目录下的文件和子目录列表。;cls清楚屏幕命令。;Tab自动补齐命令。上下键查找敲过的命令。)
###############################################################
四.常用的JAVA开发工具及其应用。
1.常用的JAVA开发工具
入门学习时,进行简单的Java程序编写,我们可以使用文本编辑器,比如:记事本。但是,记事本功能不够强大,我们可以考虑使用“更加强大的记事本”,常见的有如下三种软件:
NotepadUltraEditEditPlus在我们真正学习开发中,包括以后在企业中从事软件开发时,一般使用集成开发环境(IDE), 如下三种软件是最常见的,尤其是eclipse。 我们只选一个作为入门使用,其他两种大家自行举一反三,使用很简单。
EclipseIntelliJ IDENetBeans(现在已经不常用了)2.Eclipse的下载与安装
打开链接,寻找“适用于JAVA开发的Ecilpse IDE”注意这里下载要与自己下载的JDK版本一致,64位就下载64位的;32就下载32的。Ecilpse不需要安装,下载好以后打开就能用。不过要设置一个工作空间(Workspace)用于存放Ecilpse工作的文件。
3.在Ecilpse中创建JAVA项目
打开Ecilpse,在左侧菜单栏右键点击空白选择NEW--Java Project。项目名字自己设置。
然后打开项目文件夹,右键点击src--NEW--Class,名字自己设置,打开Class文件即可编写程序。
4.使用Ecilpse制作和运行第一个程序
新建一个Class文件,输入如下内容
public class Hello{ public static void main(String[] args){ System.out.println("Hello World!"); }}右键点击空白Run As--1 Java Application即可运行(或者点击上方绿色三角,或者快捷键F11)
运行效果为输出Hello World!
(eclipse会自动执行javac进行编译,并且会将编译错误直接给出提示,一目了然,非常便于我们调试。)
################################################################
四.制作桌球小游戏
练习目标:
1.找到敲代码的感觉 2.收获敲代码的兴趣 3.作出效果,找到自信 4.从一开始就学会调试错误 5.掌握Java代码基本结构下边两张图为制作中需要的素材

在项目名上单击右键,在菜单中依次选择new---Folder,创建一个名称是images的文件夹,并复制两 张图片到该目录下。并在src下创建类BallGame.java。
准备工作完成后,开始敲代码。
第一步:完成打开一个窗口的功能。
import java.awt.*;import javax.swing.*;public class BallGame extends JFrame {void launchFrame(){setSize(300,300);setLocation(400,400);setVisible(true);}//main方法是程序执行的入口public static void main(String[] args){ BallGame game = new BallGame();game.launchFrame();}}第二步: 加载两个图片
import java.awt.*;import javax.swing.*; public class BallGame extends JFrame { Image ball = Toolkit.getDefaultToolkit().getImage("images/ball.png");Image desk = Toolkit.getDefaultToolkit().getImage("images/desk.jpg");double x=100; //小球的横坐标double y=100; //小球的纵坐标//画窗口的方法public void paint(Graphics g){System.out.println("窗口被画了一次!");g.drawImage(desk, 0, 0, null);g.drawImage(ball, (int)x, (int)y, null);}//窗口加载void launchFrame(){setSize(856,500);setLocation(50,50);setVisible(true); } //main方法是程序执行的入口 //main方法是程序执行的入口public static void main(String[] args){BallGame game = new BallGame();game.launchFrame();}}第三步:实现动画,小球沿着水平方向移动并做边界检测、
import java.awt.*;import javax.swing.*;public class BallGame extends JFrame {Image ball = Toolkit.getDefaultToolkit().getImage("images/ball.png");Image desk = Toolkit.getDefaultToolkit().getImage("images/desk.jpg");double x=100; //小球的横坐标double y=100; //小球的纵坐标boolean right = true; //方向//画窗口的方法public void paint(Graphics g){System.out.println("窗口被画了一次!");g.drawImage(desk, 0, 0, null);g.drawImage(ball, (int)x, (int)y, null);if(right){x = x +10; }else{x = x - 10;}if(x>856-40-30){ //856是窗口宽度,40是桌子边框的宽度,30是小球的直径right = false;}if(x500-40-30||y
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务
贯联商户端app下载v6.1.8 安卓版
12.54MB |商务办公
jotmo笔记app下载v2.30.0 安卓版
50.06MB |系统工具
鑫钜出行共享汽车app下载v1.5.2
44.7M |生活服务
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-02-15
2022-02-14