Java面向对象程序设计完整版课件全书电子教案教材课件(完整).ppt
《Java面向对象程序设计完整版课件全书电子教案教材课件(完整).ppt》由会员分享,可在线阅读,更多相关《Java面向对象程序设计完整版课件全书电子教案教材课件(完整).ppt(273页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一Java入门第章课程简介(或回顾)课程的地位、作用与本学期其他课程的联系课程内容介绍重点难点目标了解 Java语言的特点掌握 Java的执行过程掌握 Java的基本编写结构概述在程序设计中,面向对象概念已经深入人心 Java是一种完全面向对象的语言 Java是一种比较简单的语言 本章主要讲述:Java语言的特点Java的编译运行环境Java程序的基本编写结构Java简介Java的前身:Oak语言Java以其优异的功能,在全球信息网的平台上撰写高互动性的网页程序(Applet)Java之父-James Gosling Java Logo Java 语法简介Java的语法和C语言大致上是一样的基
2、本数据类型大致相同:int、long、float、double、char等分支结构:ifelse、switchcase循环结构:for、while、dowhile 其他:break、continue、return、static等Java 语法简介Java是面向对象的语言,与C+类似Java改进了C+中的一些缺点,并且增加了一些新的优点 与C+相比,Java更简单、更容易学习 Java 语法简介Java中去掉的部分有:指针,预处理指令等不支持多重继承Java中新增加的部分有:资源回收(Garbage Collection)错误处理(Exception)新的修饰词(abstract、native、
3、final)等Java语言的特点简单面向对象分布式健壮性安全性体系结构中立可移植性(跨平台运行)解释执行 Java环境免费的Java开发工具集(Java Developers Kits,简称JDK)集成开发环境如Eclipse、JBuilder等Java编译环境sun公司提供了最新版本JDK5.0,下载网址:http:/ JDK安装后的目录结构:bin目录:存放可执行文件lib目录:存放Java的类库文件include目录:存放用于本地方法的文件demo目录:存放演示程序jre目录:存放Java运行环境文件 Java编译环境在安装完JDK后需要把安装好的JDK路径加入到执行路径中:演示配置演示
4、配置Java路径路径Java程序的执行过程Java的跨平台是通过Java虚拟机(JVM)来实现的。JVM是一个抽象的计算机。Java源程序经过编译器编译变成字节码字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器 解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行 编译虚拟机执行Java源代码Java字节码和操作系统相关的二进制码Java程序的执行过程Java字节码的执行方式有两种:即时编译方式 解释执行方式(最常用的方式)解释执行过程分三部进行:代码的装入代码的校验代码的执行 Java程序的执行过程JDK下用于编译和执行Java程序的命令:Javac 编译Java源程序,
5、生成Java字节码 Java 解释执行Java字节码第一个Java应用程序MyFirstApp.java 源文件/定义一个公有的类,类名为定义一个公有的类,类名为MyFirstApppublic class MyFirstApp /Java中的中的main主函数主函数 public static void main(String args)/*输出输出 欢迎来到欢迎来到wish*/System.out.println(欢迎来到欢迎来到wish);注意:Java源文件的后缀名为.javaJava源程序由类组成,声明类的关键字为class在Java语言中严格区分大小写如果一个Java类用publi
6、c修饰,则该类所在的源文件名必须与类名相同Java小应用程序Java程序有两种主要类型:独立的Java应用程序(Application)Java小应用程序(Applet)Applet是在Web页上运行的Java程序。Applet可以直接与使用浏览器的用户进行交互。JavaScript和Java JavaScript是一种仅能应用于Web页和浏览器上的程序语言 JavaScript是内嵌于HTML文档中的一小段代码,可以让HTML文档更加灵活地显示内容 JavaScript和Java源程序很相似,但是实际上两者完全不同。总结Java是从c/c+演变过来的,有着很多与c语言相同或类似之处,如基本数
7、据类型,流程控制结构,区分大小写等Java是一种简单的完全面向对象的语言,具有健壮性和安全性等特点,可以开发Application、Applet和Web应用程序。JDK是开发Java程序的必备工具。Java程序是解释执行的更多信息列出可扩展内容列出参考资源(附件、书籍、文章、网址等)。请求学员反馈、回答问题。作业问题讲解二 面向对象的概念第章目标目标q了解:面向对象的三大基本特点q理解:类和对象的概念q掌握:Java类的定义,类的属性和方法,类的构造方法以及对象的创建与引用概述概述q面向对象编程的三大基本特点是:q封装q继承q多态 q本章主要讲解面向对象编程的重要概念:q建立类的概念q理解程序
8、中对象和现实生活中对象的概念q建立起程序类实例(对象)的概念q使用类实例(对象)调用方法和属性 类的定义及现实世界的模型类的定义及现实世界的模型q面向对象的开发方法是把软件系统看成各个对象的集合q类(class)是将数据及处理数据的方法结合在一起的模型类用于描述对象q对象是归属于某个类的具体实例 类的定义及现实世界的模型类的定义及现实世界的模型q现实世界中类和对象的模型 类对象对象对象类的定义及现实世界的模型类的定义及现实世界的模型q对象可以是现实事物q人、天空、月亮、太阳、桌子q也可以是抽象事物q会议、合约q对象必须能够体现自身的一部分特性 牌照号码制造商年份启动加速停车 汽车会议内容开会地
9、点开会时间结束时间与会人员会议学号年级名字通信地址上学参加活动下课 学生类的定义及现实世界的模型类的定义及现实世界的模型q对象的属性和行为q属性体现了对象的某种特征q行为即对象所能进行的操作汽车牌照号码制造商年份车速启动加速减速停车属性行为类的定义及现实世界的模型类的定义及现实世界的模型q对象具有封装性封装(encapsulation)是对象最重要的特性如何完成各项操作的过程被对象隐藏起来了类的定义及现实世界的模型类的定义及现实世界的模型q对象都属于某个类q每个对象都是某个类的实例 q同一个类所有实例具有相同的属性和行为,但属性值各不相同学生类学号姓名年龄上课下课对象1学号:1001姓名:李明
10、年龄:18上课下课对象2学号:1002姓名:王永年龄:19上课下课对象3学号:1003姓名:周佳年级:2上课下课错误:错误:学生类中未定学生类中未定义年级属性义年级属性类(类(class)是描述了一组具有相同属性和行为的对象)是描述了一组具有相同属性和行为的对象 类的定义及现实世界的模型类的定义及现实世界的模型q类图(class diagram)是说明类的常用方法q类图是统一建模语言UML(Unified Modeling Language)的一部分,也是对类进行说明的标准表示法 Car+regNo+make+year+speed+start()+speedUp()+slowDown()+st
11、op()类名类名属性属性方法方法类的属性与方法类的属性与方法q类也是一种数据类型q每个类都描述了一组特定的数据q类这种数据类型统称为引用类型 public class Car public class Car/汽车类汽车类 /成员变量成员变量(属性属性)String regNo;String regNo;/牌照号码牌照号码 String make;String make;/制造商制造商 int year;int year;/年份年份 int speed;int speed;/车速车速 /构造方法构造方法(函数函数)public Car()/无参构造方法无参构造方法 public Car(Str
12、ing regNo,String make,int year,int initSpeed)/带有参数的构造方法带有参数的构造方法/Car类的操作类的操作(方法方法)void start()/启动启动 void speedUp(int increase)/加速加速 void slowDown(int increase)/减速减速 void stop()/停车停车 对象的实例化对象的实例化q构造方法是用来构造类实例(对象)的方法 q使用关键字new来调用构造方法,从而创建一个类的实例/调用无参数构造方法创建一个类的实例Car car=new Car();/调用带四个参数的构造方法创建一个类的实例C
13、ar theCar=new Car(VD-12345,volvo,1998,0);对象的实例化对象的实例化q通过类的实例(对象)调用方法以实现对象的操作/调用无参数方法theCarOfGreta.start();/调用带参数的方法theCarOfGreta.speedUp(10);对象的实例化对象的实例化q对象变量存放的是引用q引用就是一个所指向的对象的地址q可以通过赋值改变该引用 Car theCarOfGreta=new Car(“VD-12345”,“volvo”,1998,0);Car theCarOfAnne=new Car(“VD-12346”,“Benz”,1998,0);the
14、CarOfGreta=theCarOfAnne;设计类设计类q类是Java中的一种重要的复合数据类型,是组成Java程序的基本要素。它封装了同一类对象的属性和方法,是这一类对象的原型 q设计类是面向对象的核心设计类设计类q一个有关装修房子的问题。在该问题中涉及以下几种对象:地板,墙,油漆,墙纸,地板材料等 q需要了解的信息有:地板和墙的长,宽q需要计算的数据有:地板和墙的面积(用于决定需要多少墙纸,油漆和地板材料)设计类设计类q墙和地板具有相同的属性(长和宽),可以将这些抽象成一个类Surface类 Surface-name-length-width+getName()+getLength()
15、+getWidth()+getArea()Surface类的类图类的类图私有属性私有属性(实例变量实例变量)类名类名公有方法公有方法(实例方法实例方法)编写实现类编写实现类q根据类图,Surface类实现如下:class Surface private String name;private double length;private double width;public Surface(String initName,double initLength,double initWidth)name=initName;length=initLength;width=initWidth;publ
16、ic String getName()return name;public double getLength()return length;public double getWidth()return width;public double getArea()return width*length;编写实现类编写实现类q使用Surface类 class FloorCalculations public static void main(String args)/*步骤1:创建Surface类的一个对象*/Surface aFloor=new Surface(Marys floor,4.8,2.
17、3);/*步骤2:提取对象的数据,并计算对象的面积*/String name=aFloor.getName();double width=aFloor.getWidth();double length=aFloor.getLength();double area=aFloor.getArea();/*步骤3:将获得的结果显示在屏幕上*/System.out.println(Information about the floor with the name:+name);System.out.println(Width:+width);System.out.println(Length:+len
18、gth);System.out.println(Area:+area);访问修饰符访问修饰符privateprivate和和publicpublicqpublic表示对象外的程序能够访问该方法或属性qprivate关键字表示对象外的程序不能访问该方法或属性 q实例变量使用private修饰符,而在方法上使用public修饰符,让类外的程序只有通过方法才能访问实例变量,这样可以提高数据的安全性。构造方法构造方法q构造方法主要用来初始化类中的成员变量q方法名必须与类名相同q构造方法没有返回值类型 public Surface(String initName,double initLength,do
19、uble initWidth)name=initName;length=initLength;width=initWidth;构造方法构造方法q在创建一个类对象时,new运算符调用该类的构造方法以执行初始化工作 Surface aFloor=new Surface(Marys floor,4.8,2.3);aFloorname:Maryfloorlength:4.8width:2.3对象:aFloor构造方法构造方法q在Java中要求每个类至少有一个构造方法q如果没有为类声明构造方法,则编译器会创建一个没有参数的默认构造方法/默认构造方法public Surface()注意:当我们为类声明了任
20、何一个构造方法,则Java将不会为该类创建默认的构造方法 垃圾回收垃圾回收q在一些传统的编程语言(如C语言)中,回收内存的任务是由程序本身负责的 q程序员可能因为粗心大意,忘记及时释放无用变量的内存,从而影响程序的健壮性q程序员有可能错误地释放核心类库所占用的内存,导致系统崩溃 垃圾回收垃圾回收q在Java语言中,内存回收的任务由Java虚拟机来担当 q在程序的运行时环境中,Java虚拟机提供了一个系统级的垃圾回收器线程,它负责自动回收那些无用对象所占用的内存,这种内存回收的过程被称为垃圾回收(Garbage Collection)总结总结q类是对象的原型,对象是类的具体实例q设计类是面向对象
21、程序设计的核心q类的成员主要有:属性,方法,构造方法q使用new关键字创建类的对象,在创建对象时将调用构造方法 q对象变量存放的是引用,引用实际上是实例对象在内存中的地址 q垃圾回收线程用于回收内存中不再使用的对象 三数据类型第章目标目标q理解数据类型转换q掌握基本数据类型、操作符q掌握引用数据类型:字符串,数组概述概述qJava语言是一种严格的“类型化”语言,这意味着每个变量都必须有一个声明好的类型qJava的数据类型包括:q基本数据类型q引用数据类型 基本数据类型基本数据类型qJava语言提供了八种基本类型q4种整数类型q2种浮点数类型q字符类型q布尔类型基本数据类型基本数据类型q整数类型
22、 int 4字节 short 2字节 long8字节 byte1字节(-128127)int i;long l=3L;byte b=65;基本数据类型基本数据类型q浮点数类型 float 4字节 double 8字节float f=12.3f;double d;d=3.1415;基本数据类型基本数据类型q字符类型 char 2字节 char ch1=A;char ch2=中;Java中的字符采用unicode编码方案,一个字符占2个字节。所以一个char类型的变量可以容纳一个中文字符基本数据类型基本数据类型q布尔类型 boolean 取值:true 或 false boolean bool=t
23、rue;引用数据类型引用数据类型q引用类型可以分为q类引用类型q接口引用类型q数组引用类型 Surface aWall;/类引用类型java.lang.Runnable myThread;/接口引用类型int intArray;/数组引用类型引用数据类型引用数据类型q不管何种引用类型的变量,引用的都是对象Surface aWall=new Surface(Mary,3,5);q如果引用类型变量不引用任何对象,就给其赋值nullSurface aWall=null;引用数据类型引用数据类型q一个对象可以被多个引用变量所引用 Surface aWall=new Surface(Mary,3,5);
24、Surface westWall=aWall;JavaJava操作符操作符q根据操作对象的个数,操作符可分为 q一元操作符q二元操作符q三元操作符q根据操作符的功能可分为q一元操作符:!、+、-、-、q算术操作符:+、-、*、/、%q逻辑操作符:&、|、&、|、q关系操作符:、=、=60?及格:不及格;int score=61;String result=null;if(score=60)result=及格;else result=不及格;等价于:JavaJava操作符操作符q字符串连接操作符“+”String str1=How;String str2=are;String str3=you.
25、;String str4=str1+str2+str3;JavaJava操作符操作符q比较操作符“=”q操作数可以是基本类型,也可以是引用类型int a1=1,a2=2;boolean b1=a1=a2;String str1=Hello,str2=word;boolean b2=str1=str2;q当操作符“=”两边都是引用类型变量时,这两个引用变量必须都引用同一个对象,结果才为true JavaJava操作符操作符q对象的equals()方法 用于比较两个引用变量所引用的对象的属性值是否相同。Integer int1=new Integer(1);Integer int2=new Int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 面向 对象 程序设计 完整版 课件 全书 电子 教案 教材 完整
限制150内