读书人

合代码优化java代码解决办法

发布时间: 2012-01-03 22:16:07 作者: rapoo

合代码,优化java代码
下边是一段示例代码,不知道可不可以把C类中的两个方法合成一个方法呢?

Java code
class A {    private String name;    public String getName();    ……}class B {    private String name;    public String getName();    ……}class C {    public String getUserName (A a) {        return a.getName();    }    public String getUserName(B b) {        return b.getName();    }}



[解决办法]
让 A B 都去继承一个借口~~~
借口里定义一个方法叫 getName
然后 C 调用 接口的 getName
[解决办法]
Java code
interface I{  String getName();}class A implements I{    private String name;    public String getName();    ……}class B implements I{    private String name;    public String getName();    ……}class C {    public String getUserName (I i) {        return i.getName();    }}
[解决办法]
楼上你懂了~~呵呵
[解决办法]
最简单的方法,把C作为抽象类,让A,B都继承自C
[解决办法]
抽象类 接口 其实都差不多~~~感觉两者之间使用是反映了编程的思想~~

[解决办法]
不建议你这样做哦~~

Java code
 public static String getUserName(Object o){         try{             A a=(A)o;             return a.getName();         }catch(Exception e){             B b=(B)o;//这里应该才TRY CATCH 一下             return b.getName();                      }              }
[解决办法]
Java code
class A {    public String getName() {        return "A";    }}class B {    public String getName() {        return "B";    }}class C {    public String getName(Object o) throws Exception {        if (o instanceof A) {            return ((A) o).getName();        }        if (o instanceof B) {            return ((B) o).getName();        }        throw new Exception("");    }} 

读书人网 >J2SE开发

热点推荐