ext实例01

ext实例
(转)
www.whjava.com


package com.jcms.lesson ;
/**
 * 欢迎加入群 55792603 下载新手教程  每周一课  欢迎大家在论坛提问  我会抽时间做解答
 * 希望这个例子能够让大家能够清楚一下   new   implements  的本质
 * @author 方坤
 *
 */
public class Lesson1 {
	
	static void m1(){
		try{
			接口A a=new 接口A的实现();
			接口B b=(接口B)a;
			b.doB();
		}catch(Exception e){System.out.println("第一个方法报错:");e.printStackTrace();}
	}
	
	static void m2(){
		try{
			System.out.println("===================================执行方式二开始==================================");
			接口A a=new 贪婪的AB实现();
			接口B b=(接口B)a;
			b.doB();
		}catch(Exception e){System.out.println("第二个方法报错:");e.printStackTrace();}
	}
	
	static void m3(){
		try{
			System.out.println("===================================执行方式三开始==================================");
			接口A a=new 愚蠢贪婪的AB实现();
			接口B b=(接口B)a;
			b.doB();
		}catch(Exception e){System.out.println("第三个方法报错:");e.printStackTrace();}
	}
	
	static void m4(){
		try{
			System.out.println("===================================执行方式四开始==================================");
			陌生人 a=new 陌生人();
			接口B b=(接口B)a;
			b.doB();
		}catch(Exception e){System.out.println("第四个方法报错:");e.printStackTrace();}
	}
	
	static void m5(){
		try{
			System.out.println("===================================执行方式五开始==================================");
			陌生人 a=new 歪打正着();
			接口B b=(接口B)a;
			b.doB();
		}catch(Exception e){System.out.println("第五个方法报错:");e.printStackTrace();}
	}
//	
//	static void m6(){
//		try{
//			System.out.println("===================================执行方式六开始==================================");
//			陌生人 a=new 歪打正着();
//			接口B b=(接口B)a;
//			b.doB();
//		}catch(Exception e){System.out.println("第六个方法报错:");e.printStackTrace();}
//	}
	
/**程序的入口**/
	public static void main(String args[]){
		m1();
		m2();
		m3();
		m4();
		m5();
	}
}

 
//-----简单的接口----------
interface 接口A{
	public void doA();
}

interface 接口B{
	public void doB();
}
//-----对应的实现---------------------------------
class 接口A的实现 implements 接口A{

	public void doA() {
		System.out.println(this.getClass().getName()+"=处理A");
	}
	
}
//-----对应的实现---------------------------------
class 接口B的实现 implements 接口B{

	public void doB() {
		System.out.println(this.getClass().getName()+"=处理B");
	}
	
}
//----我是一个贪心的人---------------------------------------------------
class 贪婪的AB实现 extends 接口B的实现 implements 接口A{
	public void doA() {
		System.out.println(this.getClass().getName()+"=贪婪的AB处理A");
	}
}
//------我是一个陌生人================================
class 陌生人{
	public void doB() {
		System.out.println(this.getClass().getName()+"=陌生人处理B");
	}
	public void doA() {
		System.out.println(this.getClass().getName()+"=陌生人处理A");
	}
}
//----我是一个愚蠢的贪心人---------------------------------------------------
class 愚蠢贪婪的AB实现 extends 接口B的实现 implements 接口A,接口B{
	public void doA() {
		System.out.println(this.getClass().getName()+"=处理A");
	}
}
//----歪打正着---------------------------------------------------
class 歪打正着 extends 陌生人 implements 接口A,接口B{
	 
}

你可能感兴趣的:(ext)