声明 本PPT讲述了JAVA的基础知识 由于JAVA和C本身很接近,所以本PPT主要侧重于说明两者的区别

Slides:



Advertisements
Similar presentations
软件编程基础 一、程序的编辑 Java 源程序是以 Java 为后缀的简单的文本文件,可以用各种 Java 集成开发环境中的源代码编辑器来编写,也可以用其他文 本编辑工具,如 Windows 中的记事本或 DOS 中的 EDIT 软件等。 利用文字编辑器编写下列程序 public class Hello.
Advertisements

第 2 章 Java 运行环境搭建 2.1 Java 的运行系统 2.1 Java 的运行系统 2.2 JDK 的安装与配置2.2 JDK 的安装与配置 2.3 Java 开发工具包 2.4 Java 源文件编辑环境的选择 2.5 Application 和 Applet 程序的编写与运行.
第一章 Java 程序设计技术 概述  什么是 Java 语言  一个简单的 Java 程序  程序的编译和运行  常见错误  使用 Java 核心 API 文档.
Java 程序设计(第二版) 普通高等教育 “ 十一五 ” 国家级规划教材 辛运帷等 编著 徐小平 主讲.
多元評量與 Greenfoot 簡介 南港高中高慧君. 演講大綱 多元評量 高中階段程式設計教學目標與困境 Greenfoot 快速入門 – 袋熊吃樹葉 – 沙灘螃蟹 Greenfoot 臺灣社群介紹 2.
JAVA 编 程 技 术 主编 贾振华 2010年1月.
项目6 通用堆栈.
第1章 Java语言概述.
《 Java开发环境配置》 主讲人:耿力.
Java程序设计教程 第一讲 Java概述.
Java的程式架構與基本觀念 Java語言的歷史 Java程式的開發環境 Java程式的架構 輸出與輸入物件之使用 工具使用方法介紹
四資二甲 第三週作業 物件導向程式設計.
《Java程序设计之网络编程》 教学课件 重庆大学计算机学院
北京科技大学天津学院 信息工程系 面 向 对 象 程 序 设 计 第1讲 Java初探 主讲:于静.
第五章 字符串.
C++中的声音处理 在传统Turbo C环境中,如果想用C语言控制电脑发声,可以用Sound函数。在VC6.6环境中如果想控制电脑发声则采用Beep函数。原型为: Beep(频率,持续时间) , 单位毫秒 暂停程序执行使用Sleep函数 Sleep(持续时间), 单位毫秒 引用这两个函数时,必须包含头文件
第10讲 Java面向对象编程基础(4) 教学目标 主要内容.
第九章 字符串.
程式設計實作.
2.1 基本資料型別 2.2 變數 2.3 運算式與運算子 2.4 輸出與輸入資料 2.5 資料型別轉換 2.6 實例
常用工具类.
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
實作輔導 日期: 3/11 09:10~16:00 地點:臺北市立大學 臺北市中正區愛國西路一號 (中正紀念堂站7號出口)
第3章 語法入門 第一個Java程式 文字模式下與程式互動 資料、運算 流程控制.
程式設計實作.
第四章 基本輸出入 Java應用程式的輸出入介面有三種,分別是命令提示字元視窗、AWT元件、及Swing元件。本單元先介紹命令提示字元視窗,AWT請看第16、17章,Swing請看第20章。 輸入 輸出.
抽象类 File类 String类 StringBuffer类
第2章回顾 标识符:不用记,动手 关键字:if, else, switch, for, while, do, break, continue, void, …… 局部变量和成员变量 ①变量作用域 ②内存布局 基本数据类型 ①4类8种 ②互相转换 流程控制语句 ①分支 if……else, switch.
辅导课程六.
2018/12/7 Java语言程序设计 教师:段鹏飞.
Java基础入门 第1章 Java开发入门 · Java语言的特点 · Java开发环境的搭建 · 环境变量的配置 · Java的运行机制.
4.1 一維陣列 4.2 for(:) 迴圈 4.3 動態陣列 4.4 二維陣列 4.5 非矩形陣列
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
第二章 Java语言基础.
2019/1/17 Java语言程序设计-程序流程 教师:段鹏飞.
Ch02-基礎語法.
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
Java程序设计 第8章 字符串和文本I/O.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
實作輔導 2 日期: 3/24(星期六) 09:10~16:00 地點:臺北市立大學 臺北市中正區愛國西路一號 (中正紀念堂站7號出口)
第二章Java基本程序设计.
第三课 标识符、关键字、数据类型.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
Java變數 2014/6/24.
第二章 Java基本语法 讲师:复凡.
第二章 Java基本语法 讲师:复凡.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
第4章 Excel电子表格制作软件 4.4 函数(一).
第九节 赋值运算符和赋值表达式.
3.16 枚举算法及其程序实现 ——数组的作用.
本节内容 结构体 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
Review 1~3.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
第二章 Java基本语法 讲师:复凡.
第二章 Java基本语法 讲师:复凡.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
PPT注意事项: 当前PPT课件文件必须和提供的源代码文件夹“代码”在同一目录中即不要移动文件夹“代码”的默认位置。
變數、資料型態、運算子.
第2章 Java语言基础.
PPT注意事项: 当前PPT课件文件必须和提供的源代码文件夹“代码”在同一目录中即不要移动文件夹“代码”的默认位置。
第 5 章 常用类的使用 伍孝金
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
第二章 Java基础语法 北京传智播客教育
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
第二章 简单数据类型 §2.1 数据类型概述 §2.2 变量和常量 §2.3 简单数据类型 §2.4 简单数据类型的相互转换
Summary
Presentation transcript:

声明 本PPT讲述了JAVA的基础知识 由于JAVA和C本身很接近,所以本PPT主要侧重于说明两者的区别

内容 第一章 初识 JAVA 第二章 JAVA的基本元素 第三章 类 第四章 其他操作

第1章 初识JAVA

第1章 初识JAVA JAVA 简介 JAVA 程序的执行 JAVA 的安装 第一个JAVA 程序

JAVA 简介 JAVA 是一种完全面向对象的程序 JAVA 程序中只有类,而C++中可以没有类 JAVA 程序分类 JAVA 应用程序 JAVA Applet

JAVA程序的执行 JAVA程序的执行原理是:先将源代码编译为字节代码(.class文件) 然后字节代码可以在JAVA虚拟机(JVM Java Virtual Machine)上解释执行

JAVA 的安装 JAVA 的安装 JAVA 环境变量的设置

下载安装 JDK 官方下载地址 http://java.sun.com/javase/downloads/index.jsp TIPS:安装的时候会提示您选择安装在什么目录下, 建议安装路径不要有空格, 所以不宜安装在\Program Files目录下

环境变量设置 安装完JDK 之后需要进行系统环境变量的设置 右键点我的电脑,选择属性->高级->环境变量 假如JDK安装的目录是C:\jdk1.6 添加一个名为JAVA_HOME的系统变量,值为C:\jdk1.6 然后在PATH这个变量的最后 加入 ;%JAVA_HOME%\bin 加入CLASSPATH这个变量 其值为空的 需要设置这个环境变量,不过它的值是空的!不然可能运行的时候会出错.

第一个JAVA程序 现在可以用记事本敲一个JAVA程序了,先来个HelloWorld程序 代码如下: (HelloWorld.java) public class HelloWorld { public static void main(String [] args) System.out.println("Hello World"); }

第一个JAVA程序 运行方法: 开始菜单->运行->cmd 去到JAVA文件的目录下(例如我的电脑是C:\java) 执行以下命令: C:\java>javac HelloWorld.java C:\java>java HelloWorld 一切正常的话,您将可以看到Hello World 这行字 如果出现任何异常, 请看本PPT下一页的建议

说明 JAVA程序中, 类名要与文件名一致 例如HelloWorld 程序中,类的名字是HelloWorld,那么保存文件的时候,就应该保存为HelloWorld.java 执行的时候需要使用javac将源代码转化为字节代码,其执行语句是 javac 类名.java (执行结果将产生.class文件) 真正执行程序的语句是 java 类名 (该句将执行该类的main函数)

第2章 JAVA基本元素

第2章 JAVA基本元素 大家可以看到JAVA 程序与C++程序非常相似,只是一些细节上的不同。由于大家对C++都已经非常熟悉,所以下面主要讲述的是他们的区别 本章讲述的内容有: JAVA 程序框架 JAVA 数据类型 JAVA 表达式 JAVA 对象和引用变量 JAVA 的String类 JAVA 的输入输出 JAVA 中的方法 JAVA 的方法中的参数传递方式 JAVA 数组 JAVA 包的使用

JAVA 程序框架 如何才能创建一个JAVA应用程序呢? 我们先来看看 HelloWorld 程序的意义 第一行public class HelloWorld 它定义了一个类,public表示可以被外部访问,它的意义以后还会解释 第二行public static void main(String [] args) 这是这个类的主函数,程序将从这个地方开始执行 main中的语句是输出一个字符串

JAVA 程序框架 一个java文件只能有一个声明为public的类,而且这个类的类名应该与主文件名一致 类中必须有一个 public static void main 方法 这是程序执行的起点 注:以上都是针对只有一个java源代码文件的程序而言的, 多个源代码文件的情况以后再做说明

数据类型 JAVA 的数据类型分为两大类 简单数据类型(共8种) 除了上面的几种外,JAVA中只存在类,类对象的定义全部是引用变量 (注:我在后面的描述中,把除了简单数据类型之外的数据类型称为“对象数据类型”) 它们有着本质的区别,主要是内存分配方式不不同. 它们的区别将在本章的 “JAVA 对象和引用变量” 一节中进行叙述

简单数据类型 简单数据类型有3个大类 分别是: 整数数据类型 浮点数据类型 布尔数据类型

整数数据类型 char 0 ~ 65535 byte -128 ~ 127 short -32768 ~ 32767 int -2^31 ~ 2^31-1 long -2^63 ~ 2^63-1 char类型对应的是Unicode 字符集,其中 0-127 对应了我们常用的ASCII码.该类型C++中的使用方法在Java中是可行的,只是它在JAVA中可以覆盖更多的字符

boolean 其值为true 或者 false 浮点数据类型 float -3.4E+38 ~ 3.4E+38 double -1.7E+308 ~ 1.7E+308 布尔类型 boolean 其值为true 或者 false 简单数据类型就只有上面介绍的3大类共8种

表达式及表达式计算 表达式计算的优先顺序,运算符的优先顺序,类型强制转换及隐式转换的规则与C++完全一样。 举例: (4+7)*(45/7) (4+7)*((double)45/7)

JAVA 对象和引用变量 简单数据类型只有前面那8种,和C++很类似 对象数据类型定义的变量则是“指向类对象的引用”,这种变量是“引用变量” 简单数据类型与对象数据类型有本质的区别 简单数据类型定义的是一个“变量”,它的内存空间是在定义的时候就分配的 对象数据类型定义的是某个类的一个“引用变量”,它仅仅是一个指针. 该类变量需要使用new运算符进行内存分配. 在分配空间以后, 该“引用变量”就指向了这片申请的空间的地址。

例子 先用一个例子来说明 简单数据类型中有int类型 JAVA系统中还定义了一个与之对应的类: Integer 考虑以下语句: int x; Integer y; y=new Integer(67);

X X 30 地址 Integer对象 2700 2700 67 Y X的值

int x; 在定义的时候,就为x分配了内存空间 x=30 语句是对x进行赋值 对象数据类型 简单数据类型 int x; 在定义的时候,就为x分配了内存空间 x=30 语句是对x进行赋值 对象数据类型 Integer y; 这句话声明的是一个指向Integer 对象的引用。它定义时并不分配内存,其实它的变量只是一个指针(即该变量存储的只是一个地址) 执行y=new Integer(67); 一句时才为它分配指向Integer类型的内存空间 在这里y是“引用变量” 补充:有人说,JAVA是一种没有指针的语言 我想正确的理解应该是:JAVA是有指针的,只是它在 内部为你工作,对程序员是透明的。但是由于程序员 不能直接进行指针操作,所以JAVA数据处理的灵活性 要低于C++

几种对象数据类型 与8种基本数据类型相对应,java系统中定义了8种相应的对象数据类型,分别为: Character Byte Short Integer Long Float Double Boolean

String类 String 类是JAVA最重要的类之一 在输入输出等很多地方都需要用到它 定义 String name; name=“Rhode”; 以上第2行等价于 name=new String(“Rhode”); 因为String类中定义了一个“=”赋值运算符,所以使用String类的时候,可以不使用new运算符

String 类的用法 String 类重载了很多运算符,使用方便 一些特殊的例子 n1=12; n2=3; String str; String s1 , s2 , t; s1=“My”; s2=“Book”; t=s1+s2; // MyBook int i=3; t=s1+i; // My3 一些特殊的例子 n1=12; n2=3; String str; str=“Sum : ”+n1+n2; // 执行后 str=“Sum : 123”; str=“Sum : ”+(n1+n2); // 执行后 str=“Sum : 15”; str=n1+n2+”is the Sum” // 执行后 str=15+“is the Sum”; 执行顺序从左向右,加法执行是整数相加

String 类常用的方法 举例 str=“The book”; char charAt (int index) 取第index个字符 int compareTo (String str1); 与str1比较大小,返回 比较的值,功能与 C++中strcmp类似 String concat (String str1); 把str1加到原字符串上 boolean equals (String str1); 比较两个字符串是否相同,返回 值为true 或者 false int length (); 返回字符串的长度 String substring(int s, int l) 返回从第s个字符到第l 个字符的子串 String toUpperCase(); 返回全部转化为大写字母 的字符串 String toLowerCase(); 返回全部转化为小写字母 的字符串

1300 Rhode String 对象的理解 这是类的对象,它的变量是“引用变量” 是指向String对象的指针 地址 String对象 name name的值

加深理解 比较两个字符串是否相等 现在有定义如下: String str1=new String(“abc”); String str3=str1; 语句1:if (str1==str2) 语句2:if (str1.equals(str2)) 语句3:if (str1==str3) 以上2个语句是不同的,我们说过str1,str2叫引用变量,这样的变量是只是一个“引用”,它的内涵你可以理解为指针,也就是地址。 由于str1,str2分配不同的空间,他们地址不同,所以语句1返回false 真正的字符串内容的比较用的是语句2,他的值是true 由于str1,str3他们指向了同一个对象(即他们的地址相同),所以语句3返回true

String类常用的转换 将String 类转化为int 或者 double 等类型的方法:使用Integer类或者Double类的静态方法来转化,举例: 转化为 int int x = Integer.ParseInt(“45”); // 执行后 x=45 转化为 double double x = Double.ParseDouble(“7.5”); // 执行后 x=7.5 将int或者double 转化为String 比较简单,可以利用 String类提供的运算符来巧妙的转化: 例如:将int装化为String 可以用下面的语句 int x; String str = “”+x;

JAVA的输入输出 JAVA写控制台程序的输入需要自己处理JAVA提供的只是输入的字符流处理 我们需要定义一个InputStreamReader对象和一个BufferdReader 对象,这样我们可以获得需要的字符串,如果需要再将字符串转化为整数或者浮点数。Scanner in=new Scanner(System.in); in.nextLine(); 具体做法如下:

JAVA的输入 首先定义一个InputStreamReader对象和一个BufferdReader对象如下: InputStreamReader charReader= new InputStreamReader(System.in); BufferdReader keyboard= new BufferdReader(charReader); 以上两句可以合并写为下面这一句: BufferedReader keyboard =new BufferedReader (new InputStreamReader(System.in));

有了上面的定义后,就可以进行以下操怍 读入单个字符 ch=(char)keyboard.read(); 读入整行的字符串 str=keyboard.readLine(); 读入整数 num=Integer.parseInt (keyboard.readLine()); 读入浮点数 dbnum=Double.parseDouble (keyboard.readLine()) 可以看出,输入操作只能得到字符流 如果要获得数字的输入,还需要自己转换

scanner java.util.Scanner是Java5的新特征,主要功能是简化文本扫描。这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java API文档中列举了大量的API方法,但是都不怎么地。

JAVA输出 输出的语句是 输出举例 System.out.println(String str); System.out.print(String str); System.out.flush(); // 清空缓冲区 输出举例 字符串输出: System.out.println(“Hello”); 整数变量输出: System.out.println(“”+i);

综合例子 输入一个数字,输出它的2倍,并输出它个位的数字 (ReadWrite.java) import java.util.Scanner; public class ReadWrite { public static void main(String [] args) Scanner in=new Scanner(System.in); String st=in.nextLine(); int num=Integer.parseInt(st); System.out.println("它的两倍是:"+num*2); System.out.println("个位是: "+st.charAt(st.length()-1)); }

java数组 1、数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度 var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); 

创建一个数组并赋值     要说明的是,虽然第二种方法创建数组指定了长度,但实际上所有情况下数组都是变长的,也就是说即使指定了长度为5,仍然可以将元素存储在规定长度以外的,注意:这时长度会随之改变。

2、数组的元素的访问 var testGetArrValue=arrayObj[1]; //获取数组的元素值 arrayObj[1]= "这是新值"; //给数组元素赋予新的值 arrayObj. Push();// 将新元素添加到数组结尾,并返回数组新长度 arrayObj.unshift();// 将新元素添加到数组开始,数组中的元素自动后移,返回数组新长度 arrayObj.splice();//将新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。