美文网首页
java小记和java内部类的使用

java小记和java内部类的使用

作者: 迷了jiang | 来源:发表于2016-12-13 12:09 被阅读16次

为什么学习java

我是一名iOS开发者,大学基本没写过代码,后来是走上了培训这条不归路。一开始工作时候的不适应和迷茫,到现在挺享受现在的工作。学习java是因为java语言在后端的统治力,以及我对后端业务的浓厚兴趣。我对人工智能有很好的期待,人工智能的发展的前提是大数据,说到大数据首先要会玩数据,后端有很多跟数据打交道比较频繁的业务场景。而且在很多公司的时候,懂后端业务的技术跟容易获得机会。以上是我想要学习java的原因。

java内部类的使用

有这样一个业务场景,当我们定义了一个接口,然后又有一个基类。此时接口和基类里面有一个方法是重名的,此时如果子类需要调用接口和子类方法的时候没有办法直接实现。解决方案是通过内部类变相的实现接口的方法。
声明接口和基类

interface Teachable{    void work();}
public class Programmer {    
private String name;   
     public Programmer(){
};    
public Programmer(String name){     
     this.name = name;   
 }   
 public void setName(String name) { 
       this.name = name;  
  }    
public String getName() {       
     return name;   
 }    
//
  public void work(){        
System.out.println(name+"来自"+getClass());   
 }
}

创建子类和子类内部类

public class TeachableProgrammer extends Programmer {  
  public TeachableProgrammer(){
}    
public TeachableProgrammer(String name){   
     super(name);   
 }  
  private void teach(){ 
       System.out.println(getName() + "来自接口");   
 }      
//内部类
private class Clourse implements Teachable {   
 //来自接口的 
     public void work(){            
              teach();       
 }  
  }    
public Teachable getCallbackReference(){       
   return new Clourse();    
}
}

调用和Debug

public class TestTeachableProgrammer { 
   public static void main (String [] args) {      
  TeachableProgrammer tp = new TeachableProgrammer("你");       
       tp.work();      //来自父类
      tp.getCallbackReference().work();   //来自接口实现
 }
}

其实,我想最简单的解决办法就是方法名不要重名就好了。

相关文章

  • java小记和java内部类的使用

    为什么学习java 我是一名iOS开发者,大学基本没写过代码,后来是走上了培训这条不归路。一开始工作时候的不适应和...

  • Java 内部类和泛型的理解

    Java 内部类 Java非静态内部类持有对外部类的引用,可以访问外部类的状态使用方法 OuterClass.th...

  • 内部类

    内部类可以分为:非静态内部类;静态内部类;匿名内部类。 一、内部类 首先要说,Java为什么要使用内部类?java...

  • java学习4/11

    局部变量和成员变量的区别 Java中的static使用 Java中的静态内部类 Java中继承的初始化顺序 Jav...

  • android 内存泄漏的初级见识

    内部类的使用 java的非静态内部类和匿名内部类会默认包含外部类的引用,因此在非静态(或匿名)内部类中我们可以直接...

  • 内部类与外部类的区别和联系

    java:内部类与外部类的区别和联系 注意事项一:在内部类中可以随意使用外部类的成员方法以及成员变量。 众所周知...

  • Java 内部类2

    前面写过java内部类 查看 java内部类应该是为了隐藏和组织的模式。内部类(非静态)有个对外部类的隐藏引用,可...

  • java中的内部类

    java中内部类非为四种: 成员内部类: 和类的成员在同一级 静态内部类: 和成员内部类的区别是使用了static...

  • Java 序列化

    参考链接:Java对象的序列化和反序列化Java transient关键字使用小记 1. Java序列化概念 把对...

  • Java内部类

    Java内部类 大纲: java内部类有什么特点?为什么需要内部类? 非静态内部类持有外部类的引用 内部类的分类。...

网友评论

      本文标题:java小记和java内部类的使用

      本文链接:https://www.haomeiwen.com/subject/qgovmttx.html