Java语言基础

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在java中,现实世界对象的状态保存在软件对象的变量中; 现实世界的行为通过软件对象的方法(函数)来实现。
Class point { int x,y; void output() { System.out.println(x); System.out.println(y); } }
类和对象
• 把相似的对象划归成一个类 • 在软件中,类,就是一个模板,它定义了 通用于一个特定种类的所有对象的状态 (变量)和行为(方法) • 类是创建对象的模板,对象是类的实例
Javac java 编译器 java java 解释器
Java集成开发环境 – JBuilder – Netbean – Eclipse • 下载JDK, J2SDK地址 :http://java .sun.com
Java 的开发工具包
• J2SE(standard Edition)
– 桌面程序,程序
• J2EE(Enterprise Edition)
– 企业级,大型程序,例如电子商务,网上保税
• J2ME(Micro Edition)
– 手持设备,手机上的小程序,PDA等
Eclipse简介
• Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。
– 源代码可免费下载(www.eclipse.org) – ―一切皆是插件”
类修饰符之间的应用关系:
o o o o 公共类可以抽象的: public abstract class Socket 公共类可以是final的:public final class Socket Abstract和final不能并列修饰同一个类 Abstract中不能有private成员
类(class)
五子棋设计
• 面向过程的设计思路:首先分析问题的步骤:1、 开始游戏,2、黑子先走,3、绘制画面,4、判 断输赢,5、轮到白子,6、绘制画面,7、判断 输赢,8、返回步骤2,9、输出最后结果。把上 面每个步骤用分别的函数来实现,问题就解决了。
• 面向对象的思路:整个五子棋可以分为 1、黑白 双方,这两方的行为是一模一样的,2、棋盘系统, 负责绘制画面,3、规则系统,负责判定诸如犯规、 输赢等。第一类对象(玩家对象)负责接受用户 输入,并告知第二类对象(棋盘对象)棋子布局 的变化,棋盘对象接收到了棋子的i变化就要负责 在屏幕上面显示出这种变化,同时利用第三类对 象(规则系统)来对棋局进行判定。
– 棋子类(Chessman),方法receive() – 规则(Rule),方法judge() – 绘制(Point) ,方法print()
java面向对象程序设计的特点
• 抽象:抽出与研究有关的数据以及针对这些数据的 授权操作 • 封装:利用一个自主式框架将数据和基于数据的操 作编制在一起,形成一个对象 • 继承:一个类直接使用另一个类的属性和方法
关键词:extends
单重继承 多重继承
• 多态:一个对外接口,多个内在形式
覆盖 重载
类(class)
类:是对象的描述,是创建对象的模版,一般定义为: [类的修饰符]class 类名 [extends 父类名] { 类成员变量声明 类方法声明 } 类的修饰符:
o 访问控制符:public 和缺省访问控制符 o 抽象类:abstract o 最终类:final
面向对象的概念
• 类, 对象与实体之间的关系
计算机世界 对象
现实世界 实体
实例化

抽象
抽象 抽象数据类型 概念世界
面向对象编程的难点
• 掌握面向对象的困难之处在于思路的转化
• 我们通常习惯于考虑解决问题的方法,而 不是考虑将问题抽象成对想再去解决它
一个简单的例子
• 编写一个五子棋游戏的方法 • 面向过程的程序设计 编写一个方法,void Gobang (); • 面向对象的程序设计: 抽象出三个类和各自的方法:
多线程的
• Java支持多线程 • 多线程好像我们做一张桌子,如果你一个 人完成这张桌子—就好像一个单线程,那 么你需要先做桌面,做完桌面后,再做4个 桌子腿,如果5个人来做—在程序中开辟了 5个线程,1人做桌面,另外4人分别做4个 腿,那么这两种方式效率的高低,相信大 家能区分开了
解释的
• Java代码是解释执行的,我们使用java编译 器将java代码编译成字节码,这是一种中间 代码,然后由java 解释器解释执行。而c++ 程序是编译执行的,c++代码被编译为本地 机器指令,然后执行。
简单的
• Java的风格类似于c++,因而c++程序员初次 接触java语言就会感到很熟悉,能很快的掌 握java编程技术。 • Java摒弃了c++中容易引发程序错误的一些 特性,如指针,结构,枚举以及内存管理等 • Java提供了丰富的类库,可以帮助我们方 便的开发java程序。
安全的
• Java删除了指针和释放内存等c++功能,避 免了非法内存操作。 • 通过java 的安全体系进行保证。当我们从 网上下载java代码在本地 执行时,java的安 全架构能确保恶意的代码不能随意访问我 们本地的资源,例如:删除文件,访问本 地网络资源等操作都是被禁止的。
• 从程序设计的角度看,类是面向对象程序 设计中最基本的程序单元,类实质上定义 的是一种数据类型,我们可以使用类名来 声明对象变量 • 声明对象变量之后,还不能使用对象。必 须用运算符new创建对象实体之后,才能使 用对象
Class point { int x,y; void output() { System.out.println(x); System.out.println(y); } Class static void main(string[:args) { Point pt; Pt=new Point(); Pt.x=10; Pt.y=10; Pt.output(); } }
程序设计师 应用程序 (利用java基类和扩 展类)
字节码文件
Java虚拟机(JVM)实时支持系统
实际计算机(硬件和操作系统)
Java虚拟机与运行环境
Java跨平台的原理(2)
• 编译 • 下载 • 解释
– 代码的装入 – 代码的校验 – 代码的解释
• 执行
– 解释执行:解释器通过每次解释并执行一小段代码来 完成java程序的所有操作 – 优点:即时,效率高
面 向 对 象的特性
• 编程语言的演化
汇编语言
面向机器还是面向 问题?
过程式语言
oo语言
面向对象和面向过程的区别
• 面向过程就是分析出解决问题所需要的步 骤,然后用函数把这些步骤一步一步实现, 使用的时候一个一个依次调用就可以了。
• 面向对象是把构成问题事务分解成各个对 象,建立对象的目的不是为了完成一个步 骤,而是为了描叙某个事物在整个解决问 题的步骤中的行为。
JAVA的开发环境
• JDK:即Java Develop Kit, Java开发工具包 • J2SDK:java 2 software Develop kit,将类库和相关开
发工具以软件包的形式提供给我们使用
JRE :即Java Runtime environment,是Java的运行环境,通常包含 在J2SDK 中。如果我们仅仅是为了运行java程序,而不是从事java de 开发,我们可以直接下载JRE ,在我们的系统上安装
Java语言基础(第一讲)
• • • • • • Java语言简介 面向对象的概念 java面向对象程序设计的特点 类,包,接口 JAVA的开发环境 Eclipse简介和使用
JAVA语言简介
• Java语言的起源 • Java语言的特点
– Java是 面 向 对 象 的 – Java 是 简 单 的 – Java 是 安 全 的 – Java 是 多线程 的 – Java强大的网络功能 – Java 即解释型的 – Java 是 与平台无关的
运行 创建,编译
类装载器
字节码 检验器
源程序 (如hello-java)
网络或本地
解释器
编译
字节码文件 Hello.class
即时运行部件
运行系统
Java编译和运行系统功能图
面向对象的概念
实体:现实世界中实实在在存在的事务 对象:是由现实世界中的事务抽象而来 对象的属性
状态:即静态属性,主要指对象内部包含的各种信息,即变量 行为:即动态属性,主要是对象的操作, 其作用是设置或改变对 象的状态,即函数. 标志:为区分不同的对象,给对象打的标签,即对象的名字.
• Import java.io.*
public class simple { public static void main(String args[ ]) { char c; System.out.print(―Enter a character please:‖); try{ c=(char)Systerm.in.read(); }catch(IOException e){}; System.out.print(―you’ve entered ―+c); } }
与平台无关的
• Java 作为一种网络语言,其代码被编译成 一种机构中立的中间文件格式。只要有java 运行系统的机器都能执行这种 中间代码。 Java源程序被编译成一种与机器无关的字 节码格式,在java虚拟机上运行
Java跨平台的原理(1)
• Java的跨平台是通过Java虚拟器(JVM)来实 现的 • JVM (Java Virtual Machine) Java虚拟器,把Java字节码翻译为计算机 CPU能读懂的语言。Java为了实现平台无 关性这个功能,专门设计了一个虚拟器, 这样使得Java的移植性很高。
• 支持C/C++等变成语言
Eclipse的体系结构
JDT PDE
other
Eclipse图形界面
Leabharlann Baidu
Eclipse核心 工作空间(workspace) 运行时内核(runtime)
安装Eclipse及多国语言包
• 安装JDK
– 下载JDK(http://java.sun.com/j2se/1.4.2/download.html) – 运行下载的JDK的exe安装文件,开始安装JDK2 – 配置环境变量 • JAVA_HOME (指明JDK安装路径 ) 设为: c:\j2sdk1.4.2 • Path (系统识别Java命令 ) 设为: %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin • CLASSPATH (加载类路径) • 设 为: .;C:\j2sdk1.4.2\lib\dt.jar;C:\j2sdk1.4.2\lib\tools.jar; C:\j2sdk1.4.2\jre\lib\rt.jar;C:\j2sdk1.4.2\jre\lib\charsets.ja r;C:\j2sdk1.4.2\jre\lib\jaws.jar
• 下载Eclipse软件以及多国语言包 官方网站:http://www.eclipse.org
Eclipse界面简介(一)
主菜单
工具栏
导航器视图 编辑器
Eclipse界面简介(二)
• • •
• • •
整个窗口称为Eclipse的工作台 导航器视图:显示项目中的文件列表 大纲视图:显示当前编辑器打开文件的纲 要 任务视图:显示代码中未完成的任务 编辑器: 编写代码 透视图有:由一些视图,编辑器组成的集 合
包(package)
包:一种松散的类的集合,用来管理庞大的命 名空间和避免冲突的工具. 在package语句中,用“.‖来指明包(目录) 的层次。 创建包: package 包名
package Helloword
包(package)
Import 语句 • 引入包中的类。
– import java.io.File;
• 引入整个包
– Import java.io.*;
• 在同一个包中的类可以相互引用,无需 import语句
接口
接口:是方法定义和常量值的集合,用于解决多重继 承的问题.接口的一般定义格式如下: interface interfacename[extends superinterfacelist] { type constantName=value //常量说明 Return Type methodName(paramList)//方法 说明 } 接口的实现:class 类名 implements 接口名
相关文档
最新文档