- 浏览: 850555 次
- 性别:
- 来自: 深圳
-
文章分类
- 全部博客 (379)
- struts (5)
- hibernate (16)
- spring (16)
- ssh (20)
- MySQL (16)
- 数据库脚本 (2)
- DownLoad (1)
- GAE (5)
- Java (103)
- LoadRunner (2)
- VF (1)
- 学习资料 (24)
- 软件使用 (21)
- 通信类 (4)
- 生活 (3)
- J2ME (1)
- 心理学 (1)
- Linux (26)
- Android (3)
- Oracle (1)
- 面向对象概念&面试准备 (11)
- ExtJs (2)
- Google Map (1)
- Flex (47)
- 算法研究 (1)
- share (20)
- python (1)
- MongoDB (7)
- centos6 (13)
- C++ (8)
- DB2 (3)
- C# (1)
- 代码片段 (24)
- Lucene (2)
- php (1)
- NodeJS (1)
- Express (1)
最新评论
-
shua1991:
已阅,我表示同意。
Eclipse统计代码行数 -
nakedou:
写的不错,挺详细的
在CentOS中使用 yum 安装MongoDB及服务器端配置 -
sjp524617477:
好方法
Eclipse统计代码行数 -
simpletrc:
<script>ale ...
Java写到.txt文件,如何实现换行 -
csdn_zuoqiang:
Apache Ftp Server,目前是1.0.4,非常好的 ...
Apache FtpServer在64位系统下服务不能启动解决方法
通过google学习了一段时间的ssh整合,现在对整合一个ssh开发环境以及一个注册登陆系统已不是问题,也许是出于本人Java基础的问题,在此发表此文章加深对ssh开发过程中,几个概念的理解:
一是:面向接口编程
二是:设置注入(setter注入)
示例程序说明:
本文将引用一个常见的场景(旨在加深自己对接口与实现概念的理解):抽象 【汽车Car】 中有实例
【宝马汽车BMcar】,汽车中都有抽象 【播放器Music】 ,播放器又可以播放 【重音乐Strongmusic】,
重音乐中又可以有 【使用方法playMusic】 和 【使用方法stopMusic】 , 在抽象 【汽车Car】 和 【播放器Music】
中只包含接口。
Car Music BMcar Strongmusic 之间的关系是:BMcar是接口Car的实现类,Strongmusic是接口
Music的实现类。
代码依次是:
Car.java
/** * @author Eric Zhang */ public interface Car { //使用车载播放器方法 public void useMusicplay(); public void useMusicstop(); }
BMcar.java
/** * @author Eric Zhang * Car的实现类 * 宝马汽车BMcar */ public class BMcar implements Car { //面向Music接口编程 private Music music ; public BMcar() { } //设值注入所需的setter方法 public void setMusic(Music music) { this.music = music; } @Override public void useMusicplay() { System.out.println(music.playMusic()); } public void useMusicstop() { System.out.println(music.stopMusic()); } }
Music.java
/** * @author Eric Zhang * 播放器可以有播放方法,暂停方法,下一首,上一首等方法 */ public interface Music { //播放器的播放方法 public String playMusic(); public String stopMusic(); }
Strongmusic.java
/** * @author Eric Zhang * Music的一个实现类 * 播放器可以有重音乐播放器,轻音乐播放器等 * 在此实现,重音乐播放器 */ public class Strongmusic implements Music { public Strongmusic() { } //实现Music接口的playMusic方法 @Override public String playMusic() { return "音乐播放器播放方法"; } public String stopMusic() { return "音乐播放器暂停方法"; } }
为了看下测试结果,添加一个测试类
BeanTest.java
import org.springframework.context.ApplicationContext; import org.springframework.context.support.FileSystemXmlApplicationContext; /** * @author Eric Zhang * */ public class BeanTest { public static void main(String[] args) throws Exception { ApplicationContext ctx = new FileSystemXmlApplicationContext("/src/applicationContext.xml"); Car p = (Car)ctx.getBean("bmcar"); p.useMusicplay(); System.out.println(); p.useMusicstop(); } }
为了方便管理bean,程序一开始添加了spring的支持,所以要在此配置下bean
配置文件applicationContext. xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <!-- 定义 --> <bean id="bmcar" class="BMcar"> <property name="music"> <ref local="strongMusic"></ref> </property> </bean> <!--定义strongmusic bean--> <bean id="strongMusic" class="Strongmusic"> </bean> </beans>
最后测试结果为:
log4j:WARN No appenders could be found for logger (org.springframework.context.support.FileSystemXmlApplicationContext).
log4j:WARN Please initialize the log4j system properly.
音乐播放器播放方法
音乐播放器暂停方法
本文全属本人自学总结,如有不当,请批评指正~!
发表评论
-
微信JS
2013-10-26 21:17 2115<div class="iteye-blog- ... -
ubuntu下MySQL用source命令导入sql文件出现乱码解决方法
2012-11-18 23:46 1617首先建立数据库的时候指明数据库编码如: CREA ... -
RandomAccessFile
2012-10-18 18:16 1002public void run() { try { ... -
java中多种方式读文件
2012-10-18 16:53 1004java中多种方式读文件一、多种方式读文件内容。1、按字节读取 ... -
FileChannelMain
2012-10-15 18:12 1126package scan; import java ... -
Apache FtpServer在64位系统下服务不能启动解决方法
2012-06-10 21:29 6952Apache FTPServer是一款用Java开发的 ... -
Java 集合类
2012-06-07 22:03 1902Java 集合类 1. 为什么要了解J ... -
short、int、long与byte之间的转换工具类
2012-05-31 11:05 4547/** * 各基础类型与byte之间的转换 * ... -
Linux Mint 13 配置JAVA 环境
2012-05-24 22:35 26750.1--下载 JAVA ... -
FatJar+Exe4j+Inno Setup 生成可执行的exe文件
2012-04-17 10:54 14781、fatjar 是Eclipse的一个免费的插件。它的 ... -
JPanel JTextField add Focus 获取焦点解决方案
2012-03-30 21:29 3042public class TabPagePanel ex ... -
JList List<E> Page 分页
2012-03-30 21:28 1775package view.retrieve.comps. ... -
JButton setAction的BUG
2012-03-23 10:53 1321今天在使用JButton的时候,想用setText()setI ... -
自定义JTabbedPane皮肤
2012-03-22 12:05 4757package ui; import java.awt. ... -
两个工具类
2012-03-17 21:27 908package com.retrieve.utils; ... -
两个工具类
2012-03-17 21:27 0package com.retrieve.utils; ... -
mysql、sqlserver、oracle分页,java分页统一接口实现
2012-03-13 17:56 0定义: pageStart 起始页,pageEnd 终止页, ... -
Invalid command: InetLoad::load
2012-03-06 16:41 1407Invalid command: InetLoad::load ... -
NIO: High Performance File Copying
2012-03-01 17:25 1221In a previous tip, I discussed ... -
自定义JList
2012-02-03 15:39 821自定义JList。
相关推荐
本实例源码聚焦于Java接口的实际运用,旨在帮助开发者深入理解接口的工作机制和重要性。 接口在Java中扮演着合同的角色,它定义了一组方法的签名,但不提供具体实现。这使得类可以遵循接口定义的规则,而无需关注...
下面将详细阐述Java接口的实例及其重要性。 1. **接口定义与实现** 在Java中,接口通过`interface`关键字来声明。例如,我们可以创建一个名为`Animal`的接口: ```java interface Animal { void eat(); void ...
本示例"java web接口开发demo"可能是提供了一个简单的Java Web接口的实现,帮助开发者理解如何构建和使用这样的接口。 首先,让我们了解一下Servlet,它是Java Web应用的核心组件之一,用于接收HTTP请求并返回响应...
在实践中,你应当打开这个文件,查看其内容,理解它在整体实例中的作用,从而深化对JAVA3D的理解。 总之,JAVA3D官方实例是一个宝贵的教育资源,通过实践这些示例,初学者可以逐步掌握3D图形编程的技巧,包括对象...
总结来说,C#调用Java接口是一个相对复杂的过程,需要对Java和.NET平台都有深入的理解。使用IKVM.NET或其他类似的工具可以简化这个过程,但仍然需要注意跨语言通信中的类型映射、异常处理和性能优化等问题。实际项目...
在这个"java接口练习作业"中,我们将会探讨接口的使用,以及如何将其应用于集合框架中。 首先,让我们深入了解Java接口的基本概念。接口是完全抽象的类,不能包含实例变量,但可以声明常量。它由一系列无实现的方法...
- 定义服务接口:首先,你需要定义一个Java接口,这个接口包含了Web服务的方法。 - 实现接口:接着,创建一个类实现该接口,实现具体业务逻辑。 - 注解接口和实现类:使用`@WebService`注解标记接口,`@...
以上只是Java初学者实例中可能涉及的部分关键知识点,通过220个实例的实践,你可以逐步建立起扎实的Java基础,为后续深入学习和项目开发打下坚实的基础。不断地练习和巩固这些知识,将有助于你成长为一名合格的Java...
Java编程语言以其面向对象特性,包括接口、继承、多态性等核心概念,为开发者提供了强大的设计和实现能力。在本实例中,我们将探讨这些关键概念,并通过具体代码示例来展示它们的实际应用。 首先,**接口...
以下是对Java接口的详细解释: 一、接口的概念 Java接口是一种完全抽象的类型,它只包含常量定义和抽象方法声明。接口不包含构造函数,也不能实例化。通过实现接口,一个类承诺将提供接口中所有方法的实现。 二、...
实例中可能包含对FileInputStream、OutputStream、BufferedReader、BufferedWriter等类的使用,同时,也可能涉及Java NIO(非阻塞I/O)的使用,这对于高性能服务器端应用的开发尤其重要。 5. **多线程编程**:Java...
本书《Java网络编程实例:Java网络编程实例》显然聚焦于通过实际案例来教授这一核心技能。以下是一些主要的知识点,这些知识点通常会在书中详细讨论: 1. **TCP/IP协议基础**:首先,了解TCP/IP模型和协议栈是非常...
在编程世界中,Java是一种广泛使用的面向对象的编程语言,以其跨平台的特性、丰富的类库和高效性能而备受青睐。...建议初学者逐一运行这些实例,理解其工作原理,并尝试修改和扩展它们,以此加深对Java编程的理解。
本实例主要关注的是如何调用Web Service接口,我们将探讨相关的关键知识点。 首先,理解Web Service的基本概念非常重要。它通过SOAP(Simple Object Access Protocol)协议传输数据,使用WSDL(Web Services ...
首先,理解Delphi 7调用Java接口的基础原理。这种通信通常依赖于Java的本地接口(JNI,Java Native Interface),它允许Java代码调用C/C++代码,而Delphi代码可以编译为C++兼容的库。因此,Delphi通过JNI桥接,可以...
通过这些基本概念的学习和实践,初学者可以逐步建立起对Java编程的全面理解,并为进一步深入学习Java高级特性和框架打下坚实的基础。在“java实用编程”这个压缩包中,应该包含了这些知识点的具体实例,可以帮助学习...
《清华Java程序设计实例教程》全面覆盖了Java编程的基础知识和面向对象编程的概念,结合实例帮助读者理解和应用。通过学习,读者不仅能够掌握Java语法,还能理解如何利用Java进行软件开发,包括异常处理、集合框架的...
Java是一种广泛使用的面向对象的编程语言,以...通过实践这些小实例,你可以逐步提高自己的编程技能,并对Java有更深入的理解。记得理论与实践相结合,遇到问题不要怕,多思考、多查资料,你会在Java的世界里不断进步。
7. **实例5 哈希表和枚举器**:这部分内容可能涉及Java集合框架中的`HashMap`和`Iterator`接口,介绍哈希表的高效查找以及枚举器的使用方法。 8. **实例70 使用JDOM解析XML**:JDOM是一个用于处理XML文档的Java库,...
本资源“Java高级编程实例 100个”提供了丰富的实践案例,旨在帮助初学者深入理解并熟练应用这些高级特性。 1. **多线程**:在Java中,多线程是并发执行任务的基本方式。学习如何创建Thread类的子类,使用Runnable...