1. package $interface;
  2.  
  3. public interface ILeaveHome {
  4. public abstract int a();
  5. public abstract int b();
  6. public abstract int c();
  7. public abstract int d();
  8.  
  9. }
  1. package $interface;
  2.  
  3. public abstract class AbstractTools {
  4. private String abs01;//private的要设置访问器,外部的才可以访问
  5. private String abs02;
  6. public AbstractTools(String abs01,String abs02)
  7. {
  8. this.abs01=abs01;
  9. this.abs02=abs02;
  10. }
  11.  
  12. public void tools1() {
  13. System.out.println("zzw abstract");
  14. }
  15. public abstract int tool2();
  16.  
  17. public void setAbs01(String abs01)
  18. {
  19. this.abs01=abs01;
  20. }
  21. public String getAbs01()
  22. {
  23. return abs01;
  24. }
  25. public void setAbs02(String abs02)
  26. {
  27. this.abs02=abs02;
  28. }
  29. public String getAbs02()
  30. {
  31. return abs02;
  32. }
  33. }
  1. package $interface;
  2.  
  3. public class LeaveHomeImpl extends AbstractTools implements ILeaveHome{
  4.  
  5. public LeaveHomeImpl(String a,String b){
  6. super(a, b);//调用父类的构造方法
  7.  
  8. }
  9. public int tool2(){
  10. int a=6666;
  11. return a;
  12.  
  13. }
  14. public int a(){
  15. int a=1;
  16. return a;
  17. }
  18. public int b(){
  19. int b=1;
  20. return b;
  21. }
  22. public int c(){
  23. int c=1;
  24. return c;
  25. }
  26. public int d(){
  27. int d=1;
  28. return d;
  29. }
  30.  
  31. public static void main(String args[])
  32. {
  33. String z="z";
  34. String z6="z6";
  35. LeaveHomeImpl home=new LeaveHomeImpl(z,z6);
  36. System.out.println("home.a()="+home.a());
  37. System.out.println("home.b()="+home.b());
  38. System.out.println("home.c()="+home.c());
  39. System.out.println("home.d()="+home.d());
  40. System.out.println("home.tool2()="+home.tool2());
  41. System.out.println("getAbs01="+home.getAbs01());
  42. System.out.println("getAbs02="+home.getAbs02());
  43. home.tools1();
  44.  
  45. }
  46.  
  47. }
  1. package $interface;
  2.  
  3. public class LeaveHomeTwice extends LeaveHomeImpl{
  4. String a;
  5. String b;
  6.  
  7. public LeaveHomeTwice(){//第一种构造方式,
  8.  
  9. super("a","b");//传值进去的时候会自动调用父类的有参数的构造方法
  10.  
  11. }
  12. public LeaveHomeTwice(String a,String b){//带参数的构造方法,体现了构造方法的overload,构造方法的重载
  13.  
  14. super(a,b);//改变了父类的值
  15.  
  16. }
  17. //方法的override,方法的覆盖,对父类的覆盖
  18. public int tool2(int a){
  19.  
  20. int zzw;
  21. zzw=a;
  22. return zzw;
  23.  
  24. }
  25.  
  26. public static void main(String args[])
  27. {
  28. int num=123;
  29. LeaveHomeTwice a=new LeaveHomeTwice();//对应第一种构造方式
  30. //LeaveHomeTwice a=new LeaveHomeTwice("zzwtwice","aiguotwice");//对应第二种构造方式
  31. System.out.println(a.a()+"\t"+a.b()+"\t"+a.c()+"\t"+a.d()+"\t"+a.tool2(num));
  32.  
  33. a.tools1();
  34. System.out.println("getAbs01:"+a.getAbs01());
  35. System.out.println("getAbs02:"+a.getAbs02());
  36.  
  37. }
  38.  
  39. }

自己做的demo---宣告可以在java世界开始自由了的更多相关文章

  1. 《算法导论》第二章demo代码实现(Java版)

    <算法导论>第二章demo代码实现(Java版) 前言 表示晚上心里有些不宁静,所以就写一篇博客,来缓缓.囧 拜读<算法导论>这样的神作,当然要做一些练习啦.除了练习题与思考题 ...

  2. java 世界中Annotation

    java 世界中Annotation 在github上开始汇总一些自己学习,收集,总结,经验的一些信息,有利于跟踪,修改,提升.如果你感兴趣 可以关注一下,也可以提供自己的内容进来. https:// ...

  3. 原来Java世界里也有这么多精彩的故事,学Java真有趣!

    大千世界,无所不有.这世上不光有人类世界,还有咱们的java世界.今天就由我这个实习导游带领你们了解了解咱们的java世界奇妙之处.   有一种暖男叫catch,有一种真爱叫try---catch,世 ...

  4. Android 开创java世界(JNI Invocation API)

    在Android的世界中,由名称为app_process的C++本地应用程序(路径为:framework/base/cmds/app_process/app_main.cpp)调用JNI Invoca ...

  5. 基础篇-1.1走进Java世界

    在走进Java世界之前,我们势必先了解下Java是什么?Java是一门面向对象的编程语言,是静态面向对象编程语言的代表,极好得实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程.Java具有 ...

  6. Java 世界的盘古和女娲 —— Zygote

    本文基于 Android 9.0 , 代码仓库地址 : android_9.0.0_r45 文中源码链接: Zygote.java ZygoteInit.java ZygoteServer.java ...

  7. 当音乐学博士搞起编程,用一本书改变了Java世界!

    前言 说到Spring,也许现在的开发者们最先想到的是 Josh Long 超快的语速与现场代码能力,让很多Java开发者折服. 然后Spring的历史上,最传奇的还是要数其创始人:Rod Johns ...

  8. android10Binder(五)java世界的binder:AndroidFramework

    java世界的binder:AndroidFramework 目录 java世界的binder:AndroidFramework 一.前言 二.SystemServer进程的open.mmap 三.A ...

  9. 使用Cydia Substrate 从Native Hook Android Java世界

    这里介绍了如何使用Cydia Substrate Hook安卓Java世界.这篇文章介绍如何从Native中Hook 安卓Java世界. 手机端配置见之前文章. 一.建立工程 建立一个Android工 ...

随机推荐

  1. async await 异步编程杂记

    1. async 仅仅是用了标记 方法中有异步调用(就是有await...) 2  await  用来把「当前线程」中的代码“分成片”,通过一定条件和事件回调的形式  “依次执行”. 3. await ...

  2. BZOJ3323: [Scoi2013]多项式的运算

    3323: [Scoi2013]多项式的运算 Time Limit: 12 Sec  Memory Limit: 64 MBSubmit: 128  Solved: 33[Submit][Status ...

  3. android学习之BUG——The connection to adb is down, and a severe error has occured.

    开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选&qu ...

  4. log4net.dll配置以及在项目中应用 zt

    1 首先在项目中引用log4net.dll,然后项目中添加一个配置文件log4net.config <?xml version="1.0" encoding="ut ...

  5. HDU-1540          Tunnel Warfare

    Tunnel Warfare Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)To ...

  6. 转载:Java多线程中join方法的理解

    转载自:http://uule.iteye.com/blog/1101994 thread.Join把指定的线程加入到当前线程,可以将两个交替执行的线程合并为顺序执行的线程.比如在线程B中调用了线程A ...

  7. Ruby on Rails Session 1: How to Build a Ruby on Rails on the Ubuntu.

    About Ruby on Rails Ruby on Rails is an application stack that provides developers with a framework ...

  8. nyoj 483 Nightmare【bfs+优先队列】

    Nightmare 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 Ignatius had a nightmare last night. He found him ...

  9. jQuery 的属性操作方法

    jQuery 属性操作方法 下面列出的这些方法获得或设置元素的 DOM 属性. 这些方法对于 XML 文档和 HTML 文档均是适用的,除了:html(). 方法 描述 addClass() 向匹配的 ...

  10. 前端学习-使用JS库Leaflet.js生成世界地图并获取标注地址经纬度。

    介绍:Leaflet是一个开源的JavaScript库,对移动端友好且对地图有很好的交互性. 大小仅仅只有 33 KB, 同时具有大多数地图所需要的特点. Leaflet设计的非常简单易懂, 同时具有 ...