java spring Coding To Interfaces 圆类

来源:互联网 发布:css优化 编辑:程序博客网 时间:2024/06/16 02:08



Shape.java

package zxl;public interface Shape {public void draw();}

Point.java

package zxl;public class Point {private int x;private int y;public int getX() {return x;}public void setX(int x) {this.x = x;}public int getY() {return y;}public void setY(int y) {this.y = y;}}

Triangle.java

package zxl;public class Triangle implements Shape {private Point pointA;private Point pointB;private Point pointC;public Point getPointA() {return pointA;}public void setPointA(Point pointA) {this.pointA = pointA;}public Point getPointB() {return pointB;}public void setPointB(Point pointB) {this.pointB = pointB;}public Point getPointC() {return pointC;}public void setPointC(Point pointC) {this.pointC = pointC;}public void draw(){System.out.println("drawing triangle");System.out.println("point A ("+getPointA().getX()+","+getPointA().getY()+")");System.out.println("point B ("+getPointB().getX()+","+getPointB().getY()+")");System.out.println("point C ("+getPointC().getX()+","+getPointC().getY()+")");}}

DrawingApp.java

package zxl;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class DrawingApp {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubApplicationContext context=new ClassPathXmlApplicationContext("spring.xml");Circle circle =(Circle) context.getBean("circle");circle.draw();}}

springxml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd"><beans>       <bean id="triangle"  class="zxl.Triangle"  >        <property name="pointA" ref="pointA" /><property name="pointB" ref="pointB" /><property name="pointC" ref="pointC" />    </bean>            <bean id="pointA" class="zxl.Point" >        <property name="x" value="0" />        <property name="y" value="0" />    </bean>    <bean id="pointB" class="zxl.Point" >        <property name="x" value="-20" />        <property name="y" value="0" />    </bean>    <bean id="pointC" class="zxl.Point" >        <property name="x" value="20" />        <property name="y" value="0" />    </bean>    <bean id="circle" class="zxl.Circle" >        <property name="center" ref="pointA" /></bean>     </beans>

Circle.java

package zxl;public class Circle implements Shape {private Point center;public Point getCenter() {return center;}public void setCenter(Point center) {this.center = center;}@Overridepublic void draw() {// TODO Auto-generated method stubSystem.out.println("drawing circle");System.out.println("cricle: point is: ("+center.getX()+","+center.getY()+")");}}




----------------------------------------------------------------------------------------------------------------------------------------------------------------

DrawingApp.java

package zxl;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class DrawingApp {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubApplicationContext context=new ClassPathXmlApplicationContext("spring.xml");Shape shape =(Shape) context.getBean("triangle");shape.draw();}}