《标识符和数据类型》PPT课件.ppt_第1页
《标识符和数据类型》PPT课件.ppt_第2页
《标识符和数据类型》PPT课件.ppt_第3页
《标识符和数据类型》PPT课件.ppt_第4页
《标识符和数据类型》PPT课件.ppt_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1,第2章,标识符和数据类型 Java语言基础,2,本章主要内容,Java的基本语法单位,1,Java编码体例,2,Java的基本数据类型,3,复合数据类型,4,类和对象的初步介绍,3,Java 应用程序的结构,package语句 import语句,public class public static void main(String args) class 类名 interface 接口名 ,主类名称,4,2.1 Java的基本语法单位,空白、注释及语句 空白 Java程序的元素之间可插入任意数量的空白,编译器将忽略掉多余的空白; 程序中除了加入适当的空白外,还应使用缩进格式,使得同一层语句的起始列位置相同。,5,不提倡的程序风格,一种不好的风格,class Point int x,y;Point(int x1,int y1) x=x1; y=y1; Point( )this(0,0); void moveto(int x1,int y1) x=x1;y=y1; ,6,提倡的程序风格,class Point int x, y; / 点的x轴、y轴坐标 Point(int x1, int y1) / 构造方法 x = x1; y = y1; Point( ) / 构造方法 this( 0, 0); void moveto(int x1, int y1) / 点移动到(x1, y1) x = x1; y = y1; ,7,注释,程序中适当地加入注释,会增加程序的可读性 Java中的三种注释形式:,/ 在一行的注释 /* 一行或多行的注释 */ /* 文档注释 */,8,语句、分号和块,Java中的语句是最小的执行单位。 Java各语句间以分号“;”分隔。一个语句可写在连续的若干行内 花括号“”和“”包含的一系列语句称为语句块,简称为块,语句块可以嵌套。,9,2.1.2 Java关键字,10,2.1.3 标识符,标识符是以字母、下划线(_)或美元符($)开头,由字母、数字、下划线(_)或美元符($)组成的字符串。 标识符区分大小写,长度没有限制 。 标识符可以作为变量名、类名、方法名及接口名等。,11,标识符举例,合法的标识符 非法标识符,2Sun class #myname,Identifier username User_name _sys_var1 $change sizeof,12,2.2 Java编码体制(编程风格),Java中的一些命名约定 : 类 类名应为名词,含有大小写,每个字的首字母大写 接口 接口是一种特殊的类,接口名的命名约定与类名相同 方法 方法名应是动词,含有大小写,首字母小写,其余各字的首字母大写,尽量不要在方法名中使用下划线,13,常量 简单类型常量的名字应该全部为大写字母,字与字之间用下划线分隔,对象常量可使用混合大小写 。 变量 所有的变量都使用混合大小写,首字符为小写,后面的字首用大写,作为字间的分隔符。变量名中不要使用下划线。,14,2.3 数据类型,15,整型,字节型(byte),8个位,范围-128127。 短整型(short) ,占16个位,范围-32768 32767 。 整型( int ),占32个位。 长整型( long ),占64个位。 Java中的整型最值均有特定的符号。例如, Byte.MAX_VALUE就表示字节型的最大值127。 整型数值可以采用八进制、十进制、十六进制表示,但不能采用二进制表示,和C/C+中的一样。 如017,12,0x2aB.,public class Test_Int / 测试整形变量的最值 public static void main(String args) System.out.println(Byte.MAX_VALUE ); System.out.println(Byte.MIN_VALUE ); System.out.println(Short.MAX_VALUE ); System.out.println(Short.MIN_VALUE ); System.out.println(Integer.MAX_VALUE ); System.out.println(Integer.MIN_VALUE ); System.out.println(Long.MAX_VALUE ); System.out.println(Long.MIN_VALUE); ,17,注意: byte、short、int、long是基本类型,而Byte、Short、Integer和Long分别是四种基本类型对应的系统类类型。,整型变量(续),18,字符型 char,Java字符型变量的长度为16个位,表示范围是从u0000 到 uffff 即从0 到 65535;而C/C+是采用8个位来表示字符的。 如 A, 114 Character是char类型对应的类类型 ; 最大值 Character.MAX_VALUE 65535; 最小值 Character.MIN_VALUE0 ;,19,浮点型,分类:float和double,前者占32个位,后者占64个位。如3.14,3.14d,3.14f,默认的是double型。 Float 、Double 是对应的类类型 ; Float.MAX_VALUE、Float.MIN_VALUE是最大值和最小值。 Float.POSITIVE_INFINITY 和 Float.NEGATIVE_INFINITY是正/负无限大 。,20,布尔型,boolean变量取值:true和false ; true和false不能转换成任何数值表示,true不是1,false也不是0 。,21,2.3.2 类型转换,各类型所占用的位数从短到长依次为: byte short char int long float double,不同类型数据的转换规则,22,类型转换,当位数多的类型向位数少的类型进行转换时,需要用户明确指明,即进行强制类型转换。 一般地,高级类型(即位数较多的数据类型)转为低级类型(即位数较少的数据类型)时,截断高位内容,因此会导致精度下降或数据溢出。,int i = 3; byte b = (byte) i;,23,变量、说明和赋值,程序2-2 变量的说明和赋值 程序2-3为每种基本类型定义了一个变量,并为其赋值,24,2.4 复合数据类型,定义:用户定义的新类型为复合数据类型 Java为用户提供的复合数据类型就是我们在前面提到的复合数据类型,即类、接口和数组。,25,2.5 类和对象的初步介绍,可以将现实生活中的事物经过抽象,映射为程序中的对象。 对象在程序中是通过一种抽象的数据类型来描述的,这种抽象数据类型称为类(class)。 OOP中的三大技术:封装、继承和多态。 面向对象方法学包括三方面: 面向对象的分析(object-oriented analysis, OOA) 面向对象的设计( object-oriented design, OOD) 面向对象的程序设计( object-oriented program, OOA),26,为什么使用面向对象,随着开发系统的不断扩大,面向过程的方法越来越不能满足使用者的要求。 OOP技术使得程序结构简单,相互协作容易,更重要的是程序的重用性大大提高了。 面向对象的方法学,就是使分析、设计和实现一个系统的方法尽可能地接近我们认识一个系统的方法。 面向对象技术主要包含这样几个概念:对象、抽象数据类型、类、类型层次(子类)、继承性、多态性。,27,Java OOP能力,Java与C+ 的OOP能力比较,28,2.5.2 Java中的类定义,Java中类定义的一般格式为: 访问权限修饰符 class 类名 extends 父类名 类型 成员变量1; 类型 成员变量2; 访问权限修饰符 类型 成员方法1(参数列表) 类型 局部变量; 方法体; ,29,类定义的几点说明,Java中的类定义与实现是放在一起保存的,整个 类必须在一个文件中。 Java源文件名必须根据文件中的公有类名来定义,并且要区分大小写。 类定义中可以指明父类,也可以不指明。若没有指明从哪个类派生而来,则表明是从缺省的父类Object派生而来。,30,一辆轿车的类定义,Class Car int color_number; int door_number; int speed; void brake( ) void speedUp( ) void slowDown( ) ,31,2.5.3 Java中与OOP有关的关键字,访问权限关键字(public , private, protected),32,存储方式关键字static,只能修饰成员变量或成员方法,不能修饰方法中的局部变量; static 变量被类的所有对象所共享,可以通过类名直接访问,也可以通过对象名访问; 类中定义的公有静态变量相当于C+或C语言中的全局变量; 见例2-8,33,其他关键字,与继承相关的关键字有: final abstract (子类从父类(超类)继承的内容包括:变量和方法;子类还可以增加自己的属性和方法;) 其他关键字: this super,34,2.5.4 类定义的示例,例2-11 public class Date int day; int month; int year; ,35,例2-12 class Point int x, y; Point(int x1,int y1) x=x1; y=y1; Point( ) this (0,0); void moveTo(int x1, int y1) x=x1; y=y1; ,例2-13 Class Point3d extends Point int z; public Point3d(int x, int y, int z) super(x,y); this.z=z; public Point3d( ) this(0,0,0); ,36,2.5.5 创建一个对象,Java对类类型变量的内存分配分两步: 变量说明(建立对象的引用):在内存中为对象建立一个引用,并置初值null。 用new运算符为对象申请内存空间:空间的大小依class的定义而定,并将首地址赋给刚才建立的引用。 例如: Date today; today=new Date( );,37,?,0 0 0,0xs1abcdef,Date today; today=new Date( );,today Day Month Year today,引用,对象类实例,38,创建对象并使用的实例,例2-14 class Point int x, y; Point(int x1,int y1) x=x1; y=y1; Point( ) this (0,0); void moveTo(int x1, int y1) x=x1; y=y1; ,public static void main(String args) Point p=new Point(1,1); System.out.println(“p.x=“+p.x+“ p.y=“+p.y); p.x=p.y=20; System.out.println(“p.x=“+p.x+“ p.y=“+p.y); p.moveTo(30,30); System.out.println(“p.x=“+p.x+“ p.y=“+p.y); ,39,2.5.6 引用变量的赋值,例2-15引用变量的赋值。 int x=7; int y=x; x=10; String s=“Hello”; String t

温馨提示

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

评论

0/150

提交评论