通过继承手段修改类功能
来源:互联网 发布:淘宝导航条在线生成 编辑:程序博客网 时间:2024/06/05 10:44
继承是面向对象的特性之一,即成为我们提供了访问类的特定功能的方法。
同时继承还包含一个特性,就是如果一个类AS继承了另一个类A,那么实际上
AS可以被看成是类A的一个特殊类型,同时如果类AS中没有覆盖类A中的方法,
那么当调用AS.xxx() 方法时会直接调用父类A的相应的xxx方法。
以下包含一个简单的实例来解释继承的特性
For Example:
A.class
public class A
{
private String name;
private String serial;
public A()
{
name = "vhly[FR]";
serial = "123456";
}
public void print()
{
if(isREG())
{
System.out.println("Good User! have a good time");
}
}
public boolean isREG() // 准备覆盖的类方法
{
return name.equals(serial); // is very easy!!!!!!!!!
}
public void setData(String n, String s)
{
name = n;
serial = s;
}
}
以上类A的功能是如果输入的用户名和序列号相同,则显示"Good User! have a good time"
否则无显示。
那么如何对类A进行修改呢(输入任何数据都会显示正确信息)
public class ACrk extends A // 继承类 并且修改相应的方法
{
public ACrk()
{
super();
}
public boolean isREG()
{
return true; // 其实对于类A来说并没有被修改,而是利用继承技术生成一个
// 类A的特例,在调用时也应该调用ACrk,而不是A
}
}
调用类,并执行功能
public class Test4
{
ACrk ac;
public Test4()
{
ac = new ACrk();
}
public void test()
{
ac.setData("vhly[FR]","GOODluckFoR YOu");
// 由于ACrk继承了类A,所以可以直接调用setData()方法
ac.print(); // 同上
}
public static void main(String args[])
{
Test4 t4 = new Test4();
t4.test();
}
}
执行Test4类,会发现程序会输出正确信息。
同样,该方法也适用于GUI程序。
vhly[FR] 2006/04/18
- 通过继承手段修改类功能
- java通过修改类的字节码实现aop功能
- 通过继承扩展子类的功能
- 通过继承类实现
- 通过基类找继承类
- 通过增加逻辑来修改功能
- Flex例子--通过继承增加新的功能
- Odoo中通过继承修改view视图的标签属性
- [VB.NET]请教: 如何通过继承ToolStrip和ToolStripItem类,实现类似TreeView的分层节点(菜单) 功能 ?
- 软件测试是否通过的评估手段
- 浅谈通过信息手段提高执行力
- 如何通过技术手段实现火车票实名制
- 通过修改电源管理驱动,实现WinCE5.0关机功能
- 木马常用攻击手段-修改系统文件
- 手段
- 方案一:通过继承TextBoxBase类实现
- Java通过继承Thread类实现多线程
- 通过继承制作简单的控件类
- 内存游荡指南
- 数据库和XML数据读取性能比较。
- Java程序设计知识与技能(一)
- jdk1.3没有splitString,自己写了一个
- 来自MIT人工智能实验室:如何做研究
- 通过继承手段修改类功能
- Java程序设计知识与技能(二)
- XML入门
- Zend framework简介
- VC中调用COM组件的方法
- 在VC程序中调用服务组件
- 利用继承技术提高混乱效果 -> 使用代理类
- MoinMoin的页权限设定
- 以服务方式运行Apache for Windows