博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
继承 多态 java相关基础知识
阅读量:5130 次
发布时间:2019-06-13

本文共 1538 字,大约阅读时间需要 5 分钟。

1:静态语句块、构造语句块(就是只有大括号的那块)以及构造函数的执行顺序

例子:

class HelloA {    public HelloA() {        System.out.println("HelloA");    }        { System.out.println("I'm A class"); }        static { System.out.println("static A"); }}public class HelloB extends HelloA {    public HelloB() {        System.out.println("HelloB");    }        { System.out.println("I'm B class"); }        static { System.out.println("static B"); }        public static void main(String[] args) {      new HelloB();    }}

  答案:

static Astatic BI'm A classHelloAI'm B classHelloB

  解析:对象初始化顺序,类加载后,从父类到子类执行被static修饰的语句,(类被加载的时候,执行静态代码块,类加载到内存中后,先执行main()方法)当static语句执行完之后,再执行main方法,如果有语句new了自身的对象,将从上到下执行构造代码块、构造器(两者可以说绑定在一起)。

 

稍微修改下代码:

class HelloA {    public HelloA() {        System.out.println("HelloA");    }        { System.out.println("I'm A class"); }        static { System.out.println("static A"); }}public class HelloB extends HelloA {    public HelloB() {        System.out.println("HelloB");    }        { System.out.println("I'm B class"); }        static { System.out.println("static B"); }        public static void main(String[] args) {        System.out.println("-------main start-------");        new HelloB();        new HelloB();        System.out.println("-------main end-------");    }}

  此时输出结果为:

static Astatic B-------main start-------I'm A classHelloAI'm B classHelloBI'm A classHelloAI'm B classHelloB-------main end-------

简单工厂模式和策略模式

都是通过多态来实现不同子类的选取,多态去减少代码的耦合度

简单工厂模式:建一个工厂类,对实现某个接口的实现类进行相应的实例化

转载于:https://www.cnblogs.com/qwer113/p/9162985.html

你可能感兴趣的文章
74HC164应用
查看>>
变量声明和定义的关系
查看>>
Wpf 之Canvas介绍
查看>>
linux history
查看>>
jQuery on(),live(),trigger()
查看>>
Python2.7 urlparse
查看>>
sencha touch在华为emotion ui 2.0自带浏览器中圆角溢出的bug
查看>>
【架构】Linux的架构(architecture)
查看>>
ASM 图解
查看>>
Date Picker控件:
查看>>
你的第一个Django程序
查看>>
grafana授权公司内部邮箱登录 ldap配置
查看>>
treegrid.bootstrap使用说明
查看>>
[Docker]Docker拉取,上传镜像到Harbor仓库
查看>>
javascript 浏览器类型检测
查看>>
nginx 不带www到www域名的重定向
查看>>
记录:Android中StackOverflow的问题
查看>>
导航,头部,CSS基础
查看>>
[草稿]挂载新硬盘
查看>>
[USACO 2017 Feb Gold] Tutorial
查看>>