java基本数据类型和数组.ppt
《java基本数据类型和数组.ppt》由会员分享,可在线阅读,更多相关《java基本数据类型和数组.ppt(36页珍藏版)》请在三一办公上搜索。
1、第2章 基本数据类型和数组,1.标识符和关键字2.基本数据类型3.基本数据类型的转换4.数据的输入与输出5数组,JAVA程序概览,1.包 包是类和接口的集合,或者说包是接口和类的容器。Java中包的作用主要包括3个:1)使得功能相关的类易于查找和使用,同一个包下的类和接口通常是功能相关的。2)避免名字出现重复,不同的包下可以有现同名字的类。3)提供一种访问权限的控制机制。前面提到过访问控制通常是以包为分界的。,包的定义格式如下:package pg;其中package是包的关键字。多级包层次结构的格式为:package pg1.pg2.pg3;包的创建就是将源文件总的接口和类纳入指定的包。,1
2、.要使用某个包(不是当前类所在的包)中类的时候,用import关键字引入(有点类似C+的#include)2.想想如何避免包名冲突?3.想想如果没有IDE环境,我们怎样定义和生成包3.包有访问权限问题,这将在类权限部分详细介绍,2.类类的格式如下:类的修饰符 class extends 父类名 implenents 接口名表 变量修饰符 类型 成员变量1;变量修饰符 类型 成员变量2;方法修饰符 返回类型 方法名1(参数表)方法体1 方法修饰符 返回类型 方法名2(参数表)方法体2,与C+类定义的区别1)形式上不同,C+使用“:”,JAVA使用“extends”2)C+使用多重继承,JAVA使
3、用“implenents”3)C+使用.h文件声明类、成员变量、成员函数,然后使用.cpp文件定义类、成员变量、成员函数的具体实现(给我们造成多大的麻烦),JAVA一个类的声明和实现在一起(至关重要的区别,目前的技术认为,.h和.cpp的划分愚蠢,也许几年以后你不会再见到.h文件了)4)C+使用“public:”这样的形式作为整体变量、方法修饰符;而JAVA必须对每个变量或者方法指定,如果不指定,系统会默认为private,3.函数调用System.out.println(请输入若干个数,每输入一个数回车确认);System是类,定义在包java.lang中out是System类的静态成员对象
4、println是out对象的静态函数,1.想想看为什么程序中没有import java.lang.*)2.为什么是类,应该是对象啊?,如果想调用非静态函数,则需要先创建对象,在调用对象的成员函数。象这样(与C+一样):MyClass obj=new MyClass();obj.not_static_function();(怎样创建对象?这个下面再详细介绍。注意上面为什么不是obj-,因为JAVA没指针)(为什么JAVA没指针?这个以后再详细介绍),4.创建对象Scanner reader=new Scanner(System.in);,What is it?,跟C+很像,回忆下C+是怎样创建对
5、象的?,1.JAVA没有指针,reader是个句柄,分配在堆中2.为什么没有指针,因为专家说不安全(去google查询下“缓冲区溢出”,你就知道指针有多糟糕了)3.new的对象没有delete,因为对象被分配在“可自动回收的堆中”4.怎样做到自动回收,JAVA虚拟机提供了“垃圾自动回收算法”(有兴趣的话去google上搜索下这几个字)5.为什么要“自动回收”,到google上查询下”内存泄露”或者干两年程序员你就明白4.因为没有指针(这是为什么JAVA=C+-的原因之一),所以调用对象的成员函数不是:obj-func();而是obj.func();,5 基本数据类型初始化double sum=
6、0;int m;,这个和C+差不多,不用管它了,表面查不多而已。,1.C+的基本数据类型的长度和内存编码是随CPU和操作系统不同而不同的,而JAVA永远一致(所以JAVA可以跨平台,C+不能:write once,run anywhere)。2.C+定义变量而不初始化,其值是随机的,而JAVA会为它自动初使化,如果一个变量在使用前没有赋值,C+编译器会给予一个警告,而JAVA认为是个语义错误(又一个C+-)3.C+认为象int,double,char这些数据类型是一个程序设计语言所必须的,没有它们不行。而JAVA本身是一个纯面向对象语言(象Smalltalk),这些基本数据类型都不是必须的,因
7、为在JAVA中一切都是对象(事实上JAVA已经为每一个基本数据类型提供了一个“封装类”,只是为了老程序员的习惯考虑,才保留了这些基本类型)4.JAVA中的char与C+中的char完全不同,前者是unicode字符,占两个字节16位,后者是ascii字符,占1个字节8位。(又一个C+-)5.JAVA中Boolean类型与C+不同,前者不能与数字类型进行强制转换,后者可以,2.1 标识符和关键字,1标识符 1)Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字。2)标识符中的字母是区分大小写的,Beijing 和beijing是不同的标识符。3)标识符用来类、变量
8、、函数、数组等变量的名字。2 关键字 关键字就是Java语言中已经被赋予特定意义的一些单词,它们在程序上有着不同的用途,不可以把关键词作为名字来用。,返回,Choose the three valid identifiers from those listed below.A.IDoLikeTheLongNameClass B.$byte C.const D._ok E.3_case,基本数据类型,复合数据类型,2.2 基本数据类型,类类型,2.2 基本数据类型,基本数据类型也称作简单数据类型。Java语言有8种简单数据类型,分别是:boolean、byte、short、int、long、fl
9、oat、double、char。这8种数据类型习惯上可分为4大类型:逻辑类型:boolean字符类型:char整数类型:byte、short、int、long浮点类型:float、double,Integer,Character,Byte,Short,Long,Float,Double,对应封装类,BigInteger BigDecimal,2.2 基本数据类型,1逻辑类型(boolean)常量:true,false。练习:boolean a=true;boolean a=(1=1);但是不能:boolean a=1;,boolean b1;boolean b2=true;b1=!b2;boo
10、lean b=(b1,boolean c=(b1,int a;boolean d=(a=0);boolean d=(a=0);,int a=0;if(a=1),2.2 基本数据类型,2字符类型 注意:每个字符占两个字节,不再使用ASCII编码,而是使用Unicode 例如字母A的编码是0 x0041,而不是0 x41,而汉字真的编码是0 x771F Java也使用转意字符,如:n:换行 b:退格 t:水平制表:单引号(这部分与C一样)u0030:Unicode编码(C语言没有)变量的定义:char x=A,漂亮=A;char t=真;char k=漂亮;char k=“飘”;char c=0;
11、char c=48;char c=0+9;byte k=9;char ch=0+k;,/(这个跟C语言一样),/C语言不允许,/(JAVA,C都不允许),/(JAVA,C都不允许),/赋初值为字符0,实际存储的是0 x0030,/用整数赋初值为0,/赋值9,即0 x0039,/错误,H+k是int型,需强制类型转换,2.2 基本数据类型,下面的例子(Example3)中,分别用显示转换来显示一些字符在Unicode表中的位置,以及某些位置上的字符。,3整数类型(byte short int long)常量:6000(十进制),077(八进制),0 x3ABC(十六进制)。12l,-343L,0
12、 xfffffffffL 注意:若没有指定L,常量缺省是int类型的,练习:int a;int a=3;byte b=8;short s=10;long y=123L;long z=123l;final int a=3;(在C语言中是const int a=3;)static int a=3;final static int a=3;(在C语言中是const int a=3;)注意:C语言中的unsigned int a=3;在JAVA中没有,练习byte b1;byte b2=127;short s1=(b1+b2);short s1=(short)(b1+b2);short s2=(sho
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 基本 数据类型 数组
链接地址:https://www.31ppt.com/p-5298668.html