java类再生

“Java引人注目的一项特性是代码的重复使用或者再生。但最具革命意义的是,除代码的复制和修改以外,我们还能做多得多的其他事情。”

在象C那样的程序化语言里,代码的重复使用早已可行,但效果不是特别显著。与Java的其他地方一样,这个方案解决的也是与类有关的问题。我们通过创建新类来重复使用代码,但却用不着重新创建,可以直接使用别人已建好并调试好的现成类。

但这样做必须保证不会干扰原有的代码。在这一章里,我们将介绍两个达到这一目标的方法。第一个最简单:在新类里简单地创建原有类的对象。我们把这种方法叫作“合成”,因为新类由现有类的对象合并而成。我们只是简单地重复利用代码的功能,而不是采用它的形式。

第二种方法则显得稍微有些技巧。它创建一个新类,将其作为现有类的一个“类型”。我们可以原样采取现有类的形式,并在其中加入新代码,同时不会对现有的类产生影响。这种魔术般的行为叫作“继承”(Inheritance),涉及的大多数工作都是由编译器完成的。对于面向对象的程序设计,“继承”是最重要的基础概念之一。它对我们下一章要讲述的内容会产生一些额外的影响。

对于合成与继承这两种方法,大多数语法和行为都是类似的(因为它们都要根据现有的类型生成新类型)。在本章,我们将深入学习这些代码再生或者重复使用的机制。

时间: 2024-12-23 00:03:35

java类再生的相关文章

java类继承的语法

继承与Java(以及其他OOP语言)非常紧密地结合在一起.我们早在第1章就为大家引入了继承的概念,并在那章之后到本章之前的各章里不时用到,因为一些特殊的场合要求必须使用继承.除此以外,创建一个类时肯定会进行继承,因为若非如此,会从Java的标准根类Object中继承. 用于合成的语法是非常简单且直观的.但为了进行继承,必须采用一种全然不同的形式.需要继承的时候,我们会说:"这个新类和那个旧类差不多."为了在代码里表面这一观念,需要给出类名.但在类主体的起始花括号之前,需要放置一个关键字

怎样在Redhat 9.0下让PHP支持Java类

最近在Linux下的PHP支持Java类,我把调试笔记经过整理总结后写出来,希望对大家今后的调试会有所帮助. 系统环境: Redhat 9.0 Apache-1.3.27 Mysql3.23-54a-11 Php-4.32 j2sdk1.4.1_03 安装配置: 1.mysql使用的是redhat9自带的rpm包,不介绍安装了,jdk的安装也很简单,我们把jdk安装到/usr/java/j2sdk1.4.1_03 并在/etc/profile设置jdk环境参数. 2.编译安装apache tar

Java 类中类属性和对象属性的初始化顺序

对象 边城狂人 Java 类中类属性 (static 变量) 和对象属性 (非 static 变量) 的初始化顺序可以用如下程序测试: /** * @(#) Test.java * @author fancy */ public class Test { static String a = "string-a"; static String b; String c = "stirng-c"; String d; static { printStatic("

实战php调用java类由java类读数据库完成相关操作(Inber Write)

数据|数据库 1 建立系统ODBC 数据源photo(本次使用的是Oracle 9i,详细配置如有不懂这处再和我联系)2 编译DataBaseConnection.java文件 将其编译文件放入到PHP支持的类文件目录中 package com.inberkong.util;/******************************************************* * Programe File :复件缓冲池DataBaseConnection.java * Creat  

在ASP中使用简单Java类

方式一:把Java类注册成ActiveX组件步骤一:创建一个Java类,命名为Test.javapublic class Test{ public String getWord() { return "Hello World"; }}步骤二:编译成class文件,并拷贝到系统盘:\WINNT\java\trustlib目录下,然后注册成ActiveX组件javareg /register /class:Test /progid:Test步骤三:在ASP中使用Set obj=Create

php 调用 java类 常见配置错误

错误 不搞PHP开发的工作很长时间了,最近修改一个原来做的项目要支持调用Java类,开始重操PHP,先解决配置问题再说.不说太多费话.网上的 文章不少,但是都有很多错误的东西在里面,下面我介绍一下我配置全过程与大家分享,如有问题可以虽时联系愿意为你解决. 说明:此文章的正常性只对本文中所提供版本的PHP和JDK有保证,其它版本的未一一试,如有问题及时联系愿与你一起解决相关问题. 安装配置PHP的工作这里就略过(有不会的朋友可以与我联系inber_net@hotmail.com) 测试环境:Win

实战 php调用java类由java类读数据库完成相关操作(Inber Write)

1 建立系统ODBC 数据源photo(本次使用的是Oracle 9i,详细配置如有不懂这处再和我联系)2 编译DataBaseConnection.java文件 将其编译文件放入到PHP支持的类文件目录中 package com.inberkong.util;/******************************************************* * Programe File :复件缓冲池DataBaseConnection.java * Creat    Date

JSP+MYSQL+Java类优化分页的实例

在JSP中经常要用到查询数据库中的数据,同常我们的做法是使用SQL语句"select * from tablename order by id desc",这样的做法有 一个缺点,当数据库很大的时候查询的速度会变的很慢,在ASP中有一种方法 "select top "&recpage&" * from tablename where id not in (select top "&(recpage*(currentpage

使用Axis2和JiBX将Java类转换成Web服务,第2部分

使用Axis2和JiBX将Java类转换成Web服务,第2部分: 把XML转换成功能全面的Web服务 本文配套源码 简介 Apache Axis2 提供了好几种 XML 解决方案,可以轻松的开发功能强大的 Web 服务.Axis2 是实现 Web 服务的一个非常不错的选择.由于 Apache Axis2 和 Apache Geronimo duo 是免费而且开放源码的,因此可以考虑使用这两者. 在本系列的前一部分中,我向您介绍了在本系列两篇文章中使用到的 Java 类.我们通过 WSDL 将这些