第三讲Java类的特性二.ppt

上传人:本田雅阁 文档编号:2258764 上传时间:2019-03-12 格式:PPT 页数:35 大小:452.01KB
返回 下载 相关 举报
第三讲Java类的特性二.ppt_第1页
第1页 / 共35页
第三讲Java类的特性二.ppt_第2页
第2页 / 共35页
第三讲Java类的特性二.ppt_第3页
第3页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第三讲Java类的特性二.ppt》由会员分享,可在线阅读,更多相关《第三讲Java类的特性二.ppt(35页珍藏版)》请在三一文库上搜索。

1、1,第三讲 抽象类、包,本讲概要,知识点 抽象类 包 final、this和super Java标准类库 重点,1 抽象类(Abstract),抽象类是专门设计来让子类继承的类 。 定义的时候使用 abstract 关键字标记 包含一般类所包含的所有特性,例如:属 性、方法 另外它还包含一种很特殊的方法,叫抽象方 法 它不能被实例化,例3-18 抽象类定义实例,详细程序看 例3-18的代码,例3-19 抽象类的子类定义实例一,详细程序看 例3-19的代码,例3-20抽象类的子类定义实例二,详细程序看 例3-20的代码,超类HousePet和它子类Dog、Fish的关系,例3-21 类的使用实例

2、,public class HousePetDemo public static void main (String args) Dog myDog=new Dog ( ); Fish myFish=new Fish (“小兰“ , “王晓明“ , “小虫“, 18.0f); System.out.println(myDog.toString (); System.out.println(myFish.toString (); ,java中引入了包(package)的概念来管理类名空间。就像文件夹把各种文件组织在一起,使硬盘更清晰、有条理一样,Java中的包把各种类组织在一起,使得程序功能清楚

3、、结构分明。,2 包的概念,包的概念,我们以java.math.*为例讲解包的结构。java表示包的根节点,在math包和java包之间的“”点符号表明math是java的子包。包结构如图所示。,包是为了管理类,但更重要的是如何使用包。 编写程序时经常会使用Java类库中类 。 Java语言通过关键字import来引入要使用的类 包。,包的使用,例3-26 JOptionPane类的使用实例,import javax.swing.JOptionPane; /引入JOptionPane类 public class JOptionpaneTest public static void main(S

4、tring args) String number,Output; int n ; number=JOptionPane.showInputDialog(“输入一个数“); n=Integer.parseInt(number); JOptionPane.showMessageDialog(null,“输入的数是:“+n); ,我们也可以定义自己的包,把编写的类根据分 类放在不同的包中以便管理和使用, 定义包使用的关键字为package。,自定义包,package my.mylib.cs; public class MyMath public static int max(int a, int

5、b) return ab?a:b; ,例3-27 定义包的实例,import my.mylib.cs.*; /引入包中的类 import javax.swing.JOptionPane; public class TestMyMath public static void main(String args) int a=MyMath.max(100,200); JOptionPane.showMessageDialog(null,“输入的数是:“+a); ,例3-28 自定义包的使用实例,默认包,如果Java源代码文件的起始位置没有关键字package,编译时,类将被组织到当前目录,即默认包中

6、。 同一包中的类可以相互直接使用,无需使用关键字import导入。,小结,1、包的创建:在定义类的的首行用 package关键字 2、包的使用:import关键字 3、默认包,3 关键字final、this和super,用final修饰的变量表示常量,值一旦给定就无法改变,看下面的例子 例2-29 final修饰变量实例 例3-30 final修饰方法实例 例3-31 final修饰类的实例,this和super,简单的说,this代表当前对象或类的实例。有时一个方法需要引用调用它的对象。为此,Java 定义了this 这个关键字。this 可以在引用当前对象的所有方法内使用。也就是,this

7、 总是调用该方法对象的一个引用。 例3-32 this关键字使用的实例1 例3-33 this关键字使用的实例2,this和super,与this关键字相似,关键字super表示对父类的引用。通过在子类中使用super做前缀可以引用被子类隐藏的父类变量或被子类重写的父类方法。虽然构造方法不能够继承,但利用super关键字,子类构造方法中也可以调用父类的构造方法。 例3-34 利用super操作父类的构造方法,4 Java标准类库,介绍一下Java的一些典型类 Math类 Date类 Java api 帮助文档的使用,Math类(数学类),数学类包含了许多数学函数 如sin、cos、exp、ab

8、s等。 Math类是一个工具类,它在解决与数学有关的一些问题是有着非常重要的作用 。,Math类(数学类),属性(静态属性) E:E代表数学中的e 2.7182818 PI:PI代表派pi 3.1415926 引用时,用法如:Math.E 和 Math.Pi;,Math类(数学类),方法(均为静态方法) public static int abs ( int a ) public static long abs ( long a ) public static float abs ( float a ) public static double abs ( double a ) 求a的绝对值

9、public static double exp ( double a ) exp求e的a次幂。,Math类(数学类),方法(均为静态方法) public static double floor ( double a ) floor返回 最大的 小于a的整数。 public static double pow ( double a, double b ) pow求a的b次幂。 public static double sqrt ( double a ) sqrt求a的开平方。 public static double random() random产生01之间伪随机数。 Public stat

10、ic double round ( double a) round 四舍五入。,例3-35 Math类的使用,public class mathInstance public static void main(String args) System.out.println (Math.E); System.out.println (Math.PI); System.out.println (Math.exp(5.7); System.out.println (Math.random(); System.out.println (Math.sqrt(9.08); System.out.print

11、ln (Math.pow(2,3); System.out.println (Math.round(99.6); System.out.println (Math.abs(-8.09); ,Date类(日期类),Date类是用来表示日期和时间 Date类表示的是从GMT(格林尼治标准时间)1970年, 1月1日00:00:00这一刻之前或者是之后经历的毫秒数,例3-36 Date类的使用,import java.util.Date; public class DateExample1 public static void main(String args) / 获得系统时间 Date date

12、 = new Date(); System.out.println(date.getTime(); ,Date类(日期类),Date类常用方法 public Date(int year, int month, int date) 该构造方法通过年year、月month、日date三个整数初始化Date类对象。 public int getDate() 返回此 Date 对象表示的月份中的某一天。 public void setDate(int date) 把此 Date 对象的月份中的某一天设置为指定值。,例3-37 比较日期,import java.util.Date; public cla

13、ss UseDate public static void main(String args) Date mybirthday = new Date(78, 01 ,10); Date yourbirthday = new Date(86, 3 , 24); Boolean result1=mybirthday.after(yourbirthday); Boolean result2=mybirthday.before(yourbirthday); System.out.println(result1); /输出false System.out.println(result2); /输出tru

14、e System.out.println(mybirthday.equals(yourbirthday); ,5 Java帮助文档的使用,Java开发包中提供了几千个类,方法更是数以万计 。 学会使用帮助文档是非常必要的。 Sun公司网站(http:/ Java帮助文档的使用,Java开发包中提供了几千个类,方法更是数以万计 。 学会使用帮助文档是非常必要的。 Sun公司网站(http:/ Java帮助文档的使用,可以采用不同的策略来查找我们要的帮助信息 。 方法一:知道String类位于java.lang包中的查找方法(演示说明)。 方法二:不知道String 类位于哪个包中的查找方法(演示说明)。 方法三:只记得方法名replace(),不知道是哪个类中的方法 的查找方法(演示说明)。,小结,3.7 抽象类 3.8 包 3.9 final、this和super,谢谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1