java技术博客
jsp博客
BlogJava
首页
新随笔
联系
聚合
管理
数据加载中……
java的动态多态
/** */
/**
* 通过本程序的测试,主要学习抽象类及子类,抽象方法的实现
* 动态绑定,多态
*/
import
java.text.NumberFormat;
public
class
AbstractTest
{
public
static
void
main(String[] args)
{
Person[] p
=
new
Person[
2
];
p[
0
]
=
new
Worker(
"
Jack
"
,
1000
);
p[
1
]
=
new
Student(
"
Tom
"
,
"
Computer
"
);
for
(
int
i
=
0
; i
<
p.length; i
++
)
{
Person people
=
p[i];
System.out.println(people.getDescription());
}
}
}
/** */
/**
* 抽象类
*/
abstract
class
Person
{
private
String strName;
public
Person(String strName)
{
this
.strName
=
strName;
}
public
String getName()
{
return
strName;
}
//
抽象方法,返回人的描述
public
abstract
String getDescription();
}
/** */
/**
* 工人类,扩展了抽象类,并实现了抽象方法
*/
class
Worker
extends
Person
{
private
double
salary;
public
Worker(String strName,
double
s)
{
super
(strName);
salary
=
s;
}
public
String getDescription()
{
NumberFormat formate
=
NumberFormat.getCurrencyInstance();
return
"
the worker with a salary of
"
+
formate.format(salary);
}
}
/** */
/**
* 学生类,扩展了抽象类,实现了抽象方法
*/
class
Student
extends
Person
{
private
String strMajor;
public
Student(String strName, String strMajor)
{
super
(strName);
this
.strMajor
=
strMajor;
}
public
String getDescription()
{
return
"
the student majoring in
"
+
strMajor;
}
}
posted on 2008-11-07 16:31
郭兴华
阅读(274)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
<
2008年11月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
统计
随笔 - 84
文章 - 1
评论 - 2
引用 - 0
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(3)
给我留言
查看公开留言
查看私人留言
随笔分类
java每日练习代码
(rss)
TESTARRAY(6)
(rss)
事件模型与事件处理
(rss)
随笔档案
2009年1月 (2)
2008年11月 (14)
2008年10月 (68)
文章档案
2008年10月 (1)
搜索
最新评论
1. re: jsp读取*.TXT
请问 retstr是什么数据类型?String?好像不行哦
--jsp
2. re: StudentTest1.java
看不懂你的意思,代码没有缩进,看着很不习惯那。
--杨爱友
阅读排行榜
1. java中的treemap(4597)
2. JDBC连接SQLSERVER(1819)
3. 判断一个一个路径是否是目录(1084)
4. jsp读取*.TXT(762)
5. java代理模式(726)
评论排行榜
1. StudentTest1.java(1)
2. jsp读取*.TXT(1)
3. java1.5注解(二)(0)
4. java1.5注解(一)(0)
5. jsp中使用类(0)