spring的继承使用<六>
2015-12-04 23:48
639 查看
问题?spring的继承使用
定义:关于类与类之间继承,子类使用父类方法及属性的方法
关于继承
1、如果一个类在spring配置文件中,但是不想让整个类创建对象,则用abstract="true"
2、如果让一个子类拥有父类的属性,则parent="commonDao"
案例:
父类:
子类:
applicationContext.xml配置文件
测试类:
正确结果:
如果在配置文件中没有设置parsent=“”,将不会得到设置的属性值
还有一个错误,如果没有设置父类为抽象类,这里设置了abstract属性(防止父类产生对象,只准子类使用父类),及会产生如下错误:
定义:关于类与类之间继承,子类使用父类方法及属性的方法
关于继承
1、如果一个类在spring配置文件中,但是不想让整个类创建对象,则用abstract="true"
2、如果让一个子类拥有父类的属性,则parent="commonDao"
案例:
父类:
package cn.itcast.sh.spring.di_extends; public class CommenDao { public String a; public void A(){ System.out.println("得到dao层的A方法 了!"); } public void B(){ System.out.println("得到Dao层的B方法了!"); } public String getA() { return a; } public void setA(String a) { this.a = a; } }
子类:
package cn.itcast.sh.spring.di_extends; public class PersonDao extends CommenDao { }
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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="commenDao" class="cn.itcast.sh.spring.di_extends.CommenDao" abstract="true"> <property name="a" value="父类的值:"></property> </bean> <bean id="personDao" class="cn.itcast.sh.spring.di_extends.PersonDao" parent="commenDao"></bean> </beans>
测试类:
package cn.itcast.sh.spring.ioc.test; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import cn.itcast.sh.spring.di_extends.CommenDao; import cn.itcast.sh.spring.di_extends.PersonDao; public class ExtendsTest { @Test public void A(){ ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); // CommenDao commenDao = (CommenDao)applicationContext.getBean("commenDao"); // commenDao.A(); PersonDao personDao = (PersonDao)applicationContext.getBean("personDao"); personDao.A(); System.out.println(personDao.a); } }
正确结果:
如果在配置文件中没有设置parsent=“”,将不会得到设置的属性值
还有一个错误,如果没有设置父类为抽象类,这里设置了abstract属性(防止父类产生对象,只准子类使用父类),及会产生如下错误:
相关文章推荐
- java 字符串比较诡异状况
- Struts2文件下载时,中文文件名和chorm不兼容问题
- 二叉树 --- Java实现
- java获得项目绝对路径
- JavaFX入门(二):JavaFX和FXML
- 关于Springmvc(1)
- java用户输入判断保存到文件中(会覆盖原数据)
- 设置Java的编码方式
- Java中只存在值传递,不存在引用传递
- Java线程池例子
- RxJava操作符学习
- java 多态的理解
- 走进Java
- JAVA中Socket编程(二)---通过UDP协议实现通信
- c#学习和java的比较
- 从头认识java-12.2 Class对象(4)-泛化
- JAVA中通过InetAddress类获取主机名与IP地址
- 第二个spring
- javax.servlet.jsp.JspException cannot be resolved to a type
- eclipse没有New Java Class的解决办法