Java 语言基础.ppt_第1页
Java 语言基础.ppt_第2页
Java 语言基础.ppt_第3页
Java 语言基础.ppt_第4页
Java 语言基础.ppt_第5页
免费预览已结束,剩余37页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java 语言基础,Java 概述,面向对象基本概念,Java 语言基础,OO 程序设计(上) 对象与类,数据结构与语言基础类,图形用户界面,OO 程序设计(下) 高级功能,Applets,异常处理,文件及输入输出,网络编程,多线程,JDBC与数据库访问,JSP与Web应用,Java 的可视化编程环境,J2SE,J2EE,J2ME,程序结构,package import - class 类名1 属性定义 方法名1() - 方法名2() - class 类名2 - ,一个程序可包括若干个类, 各类之间存在并列、继承和包含关系。 这些类通常是在一起协同工作的:每一个类都可能需要创建其他类的对象,并

2、调用类或对象的属性及方法。 编程只能在方法中。 编译后每个类产生一个 .class文件,java的名字空间和包,作为一种在整个Internet上动态装载模块的语言,Java特别注意避免名字空间的冲突。 全局变量不再是语言的组成部分(没有全局的属性与方法)。 所有的方法和属性都在类中定义,是类的组成部分。 每个类又是包的组成部分。 全限定名 : 包名 . 类名 . 方法名 inport 打开一个包后 ,可直接指定该包中的类名。 在本类中,可以直接使用方法名及属性名。,包的概述,一个包是一组相关类的集合。 类库由若干包组成。 java.lang 语言核心类(String Integer Math)

3、 java.awt 图形用户界面 java.applet applet小程序 java.io 文件与输入输出 网络编程 java.util 实用程序类(随机数、日期、系统属性) Java API 文档,语句规则,语句种类 说明语句 如属性说明、变量说明等 表达式语句 控制语句 (条件、循环、转移) 异常处理语句 块语句(代码块,一组语句用花括号括起来) 注释 / - 只限于行内 /* - - - */ 一段注释文本 基本语句用分号结束,数据类型与说明语句,Java程序中所处理的数据是将各种数据类型实例化后的数据。 数据类型实例化的方法:说明语句 实例化数据的两中形式:变量与常量,数据类型与说明

4、语句,基本数据类型说明语句: boolean b = true; short si = 128; int I,j,k = -99; long l = 123456789; char ch = J; char chc = 中 ; float f = 3.1415926; double d = -1.04E-5; Java几乎是将字符串视为基本数据类型 String s = “你好!”;,Java 标识符: 区分大小写 组成 :字母 数字 _ $ 开头: 字母 _ $,常量,布尔常量 true false 整型常量 一般常量:32bit 长整型常量:64bit (88L) 十进制数:非0开头的正负

5、整数 105,-23 八进制数: 0开头的正负整数 017(15), -023(-19) 十六进制:0 x开头的正负整数 0 x2F(47),-0 xa8(-168) 浮点常量 一般浮点常量(32bit) 3.14F 6.18E3F 双精度浮点数(64bit ) 7.56D 6.02E23 (D可省),数据类型转换,同种数据类型转换: 短类型 长类型:默认 长类型 短类型:强制 不同数据类型转换字符/数值:强制 例:int a ; long b ; char c; b = a ; a = ( int ) b ; c= (char) a ; a=(int) c 布尔型与其他数据类型之间不能强制类

6、型转换,byte short int long float double,数据类型转换,import java.io.*; public class a1 public static void main(String args) int i=65; char c=a, cc=王; System.out.println(i); 65 System.out.println(char)i);A System.out.println(c);a System.out.println(int)c);97 System.out.println(cc);王 System.out.println(int)cc)

7、;29579 System.out.println(char)35328);言 ,1,Wrapper类,基本数据类型,Wrapper 类,boolean,Character,char,Boolean,Byte,byte,Short,short,Integer,int,Long,long,Float,float,Double,double,Integer,属性 staticint MAX_VALUE 返回int型数据的最大值 staticint MIN_VALUE 返回int型数据的最小值 构造器 Integer(int value) Integer(String s) 方法 int intVa

8、lue() double doubleValue() String toString() static String toString(int i) static Int parseInt(String s) static Integer valueOf(String s),类型转换利用类/对象方法,利用类方法(静态方法) static int Integer.parseInt(“23”) static String Integer.toString(23) static double Double.parseDouble(“12.3”) static String Double.toStri

9、ng(12.3) 利用对象方法 Double d ; String s; d=new Double(12.3) ; /构造 s= d.toString(); Double.valueOf(“12.3”).doubleValue() ; /返回,2,引用类型类,定义类(新的数据类型): class MyDate int day ; int month ; int year ; 基本数据类型直接分配内存空间。 int I,j,k ; 引用类型 ? MyDate d1 ; d1 = new MyDate() ;,引用类型类,MyDate d1 = new MyDate() ;,d1.day = 28

10、 ; d1.month = 12; d1.year = 70 ;,引用类型数组,在Java中,数组是独立的类,有自身的方法,不是变量的集合。 一个数组是数组类的一个对象。 一维数组定义 int IntArray = new int 5 ; 数组类对象引用说明( IntArray) 动态分配空间( new int 5 ) int IntArray (提倡格式) 类型 变量名,引用类型数组,int intArray = 11, 47, 93, 26, 38 分配空间+赋初值 静态初始化必须与数组定义放在一个语句中。 intArray = new int10 ; /原数组丢失。,XXXX,intAr

11、ray,11,47,93,38,26,数组元素为类的对象,定义数组 Integer a; / Null handle Integer b = new Integer5; 创建数组元素的对象实例 for(int i = 0; i b.length; i+) bi = new Integer(I*10); 创建数组时初始化 Integer d = new Integer(1), new Integer(2), new Integer(3);,多维数组定义,数组元素又是数组对象 int intArray = new int 105 ; int intArray = 1,3,2,4,1,2,3,4 ,

12、数组类,数组使用之前要确定大小,可以在程序中根据需要指定其大小(如用表达式计算出大小)。 一旦生成数组,大小不可改变。java不支持变长数组。 数组的属性length 数组元素的个数 java数组作为一种对象类型,可以作为方法的参数,传的是指向数组的引用。 ArrayIndexOutOfBoundsException 例外,数组类,int m1 , m2 ; int a ; m1=5 ; m2=10; a=new intm1m2; for(int i=0 ; i5 ; i+) for(int j=0 ; j10 ; j+) aij = i*j ; for(int i=0 ; ia.length

13、 ; i+) for(int j=0 ; jai.length ; j+) System.out.print(aij + “ “); System.out.println(); ,3,引用类型字符串类,字符串类代表字符串,每一个字符串常量是该类的一个实例。 构造函数 String s = new(); String s = new(“abc”); char data= a, b, c; String s = new String(data); String s = “abc”;自动为该字符串常量创建一个 String类的实例,引用类型字符串类,int x=123; int y=x ; Stri

14、ng s1=“abc” ; String s2 = s1 ;,123,123,0 x01234567,null,x y s1 s2,“abc”,s2=“def”,引用类型字符串,String s1 = new String(“abc”) ; String s2 = new String(“abc”) ;,0 x01234567,0 x12345678,s1 s2,“abc”,“abc”,s1 = = s2 false s1.equals(s2) true,引用类型字符串,String s1 = “abc” ; s1=s1 + “def” ;,XXXXX,“abc”,s1,4,字符串类-Stri

15、ng,方法 int length() / 返回字符串长度 例:“Java与面向对象程序设计”.length() 的值为13 char charAt(int index) /返回指定位置的字符 例 Java与面向对象程序设计.charAt(2) int compareTo(String s2) /字符串比较 int compareToIgnoreCase(String s2) boolean equals(Object obj) /判断字符串相等 String toLowerCase() /将字符串转换为小写 String toUpperCase() /将字符串转换为大写 (返回新串,不改变原字

16、符串),字符串类-String,String substring(int beginIndex) /取子串 String substring(int beginIndex, int endIndex) int indexOf(String s) /返回串s在当前串中位置 int indexOf(String s,int fromIndex) boolean startsWith(String prefix)判断该字符串是否以prefix为前缀。 boolean endsWith(String suffix) 判断该字符串是否以suffix为后缀。 char toCharArray() /将字符

17、串转为字符数组,5,字符串类,Java的字符串连接运算符 + Object 的方法 toString() 实现其他对象向字符串的转换 main方法的参数 class a public static void main(String args) int x = Integer.parseInt(args0); int y = Integer.parseInt(args1); System.out.println(“x+y=“ + (x+y) ); ,字符串类StringBuffer,String类对象是不可变的字符串 StringBuffer类对象是可变的字符串,有改变字符串的若干方法。 构造函

18、数 StringBuffer() StringBuffer(int length) /设置初始容量 StringBuffer(String s) 方法 String toString() void setCharAt(int index , char c) /修改字符,表达式语句,表达式是变量、常量及运算符的组合。 表达式既可单独组成语句,也可出现在条件测试、变量说明、方法调用的参数等场合 在表达式构件中,运算符起到关键作用。 运算符(实现操作)-运算元(操作对象) 二元运算符、一元运算符、三元运算符 表达式的结果是一个右值,即不能出现在赋值运算的左边。结果类型由参与运算的数据类型确定。 赋值

19、是一种运算符,为编程带来灵活性(如对循环变量进行初始化)。,Java运算符,一般运算是把运算对象作为一个整体处理,而位运算是把整型数运算对象拆开,以位(bit)作为运算对象,运算符例移位,移位 带符号右移:左侧空出位全用符号位填充 不带符号右移 :左侧空出位用0填充 2x 2 3000011110011110000000011100000111 -1711101111101111001111101100111011 1281 128 / 21 = 64 2564 256 / 24 = 16 -2564 -256 / 24 = -16 128 1 128 * 21 = 256 16 2 16 *

20、 22 = 64,运算符例,自运算符+ - j+ j- +j -j 运算符的位置决定了自运算的顺序(在表达式运算之前或在表达式运算之后。 a=3 b=5 c=(a+)*b a=4 c=15 a=3 b=5 c=(+a)*b a=4 c=20 三目条件运算符(?:) D=表达式A ?表达式B :表达式C A为真,返回表达式B A为假,返回表达式C 总是返回B,C中的长类型 例:int x=5, y=8; long z=2; long k=x3?y:z; /k=8,条件语句,if ( 条件表达式 ) 语句块; else 语句块;,多重嵌套的if语句 if (条件1) 语句块1; else if (

21、条件2) 语句块2; else if (条件3) else 语句块n;,switch 开关语句,switch(表达式) case 判断值1:语句组1 ; case 判断值2:语句组2 break ; default:语句组n; switch 的常量和表达式可以是整型、字符型及byte型 任何两个case常量不可以有相同的值。 只能对等式进行测试,根据表达式取值的不同转向不同的分支。 每个case分支中的语句块无须用花括号括起来。 每个case分支都只是入口点 break 语句是转移语句(转出switch),Java的循环语句,while(表达式) do 语句组; 语句组; while(表达式); for ( 表达式1;表达式2;表达式3) 语句组; 表达式1:循环变量赋初值,可使用外部没有定义的循环变量 表达式2:循环条件 表达式3:循环变量修正,Java的转移语句,没有got

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论