1.Constructor running order of Base class and Derived class

This is Alibaba's audition problem.

 class A{
     A(int x){
         System.out.println(x);
     }
 }
 class B{
     A m=new A(1);
     B(){
         m=new A(2);
     }
 }
 class C extends B{
     A n=new A(3);
     C(){
         n=new A(4);
     }
 }
 public class ali {
     public static void main(String[]args){
         new C();
     }
 }

output :

1

2

3

4

java Is different from C#.

java:Base class first

  Base class member define.

  Base class constructor

  Derived class member define.

  Derived class constructor.

C#:member define first

  Base class member define.

  Derived class member define.

  Base class constructor.

  Derived class constructor.

2.Derived class constructor will call Base class  constructor.

//子类的构造函数会调用父类构造函数
class one {
    public one(){
        System.out.println("one");
    }
}
class two extends one{
    public two (){
        System.out.println("two");
    }
    public two(String s){
        System.out.println("two "+s);
    }
}
class three extends two{
    public three(){
        this("haha");
        System.out.println("three");
    }
    public three(String s){
        super("haha");
        System.out.println("three "+s);
    }
}
public class Construct {
  public static void main(String[]args){
      new three();
  }
}

3.i++

4.

5.

6.接口继承

interface A{
    int n=3;
    void fun();
}
interface B{
    int n=3;//都是final类型的默认。
    void fun();
}
class C implements A,B{
    public C(){
        //n=4;//wrong ,ambiguous二义性
        //A.n=4;//wrong,final 类型不可赋值
    }
    public void fun(){//函数不会有二义性,只要有这个函数,就算实现了借口

    }
}
public class InterfaceTest {
    public static void main(String[]args){
        new C().fun();
    }
}

Java Little Knowledge的更多相关文章

  1. 10 Things Every Java Programmer Should Know about String

    String in Java is very special class and most frequently used class as well. There are lot many thin ...

  2. Java 集合系列(四)—— ListIterator 源码分析

    以脑图的形式来展示Java集合知识,让零碎知识点形成体系 Iterator 对比   Iterator(迭代器)是一种设计模式,是一个对象,用于遍历集合中的所有元素.  Iterator 包含四个方法 ...

  3. Java 集合系列(三)—— LinkedList

    以脑图的形式来展示Java集合知识,让零碎知识点形成体系 LinkedList    LinkedList是一种可以在任何位置进行高效地插入和删除操作的有序序列.   它的最基本存储结构是一个节点:每 ...

  4. Java 集合系列(二)—— ArrayList

    ArrayList ArrayList 是通过一个数组来实现的,因此它是在连续的存储位置存放对象的引用,只不过它比 Array 更智能,能够根据集合长度进行自动扩容. 假设让我们来实现一个简单的能够自 ...

  5. java_对象序列化、反序列化

    1.概念 序列化:将对象转化为字节序列的过程 反序列化:将字节序列转化为对象的过程 用途: A:将对象转化为字节序列保存在硬盘上,如文件中,如文本中的例子就是将person对象序列化成字节序列,存在p ...

  6. Linux一些错误总结

    1.cannot verify <mydomainname> certificate, issued by '/C=US/O=Let's Encrypt/CN=R3': 解决1:wget ...

  7. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  8. Java Knowledge series 4

    JVM & Bytecode Has-a or Is-a relationship(inheritance or composition) 如果想利用新类内部一个现有类的特性,而不想使用它的接 ...

  9. Knowledge Point 20180506 深究Java的跨平台特性

    本章主题:从骨子里看Java的跨平台;本文内容部分摘自https://www.cnblogs.com/roger-yu/p/5827452.html 有过基础Java知识的开发人员都知道Java是跨平 ...

随机推荐

  1. Binary Tree: Write a function to return count of nodes in binary tree which has only one child.

    June 8, 2015 我最喜欢的一道算法题目, 二行代码. 编程序需要很强的逻辑思维, 严密,我还没有很好训练自己.想一想, 二行代码, 五分钟就可以搞定; 最近这几天网上大家热议的 Homebr ...

  2. Codeforces 461B. Appleman and Tree[树形DP 方案数]

    B. Appleman and Tree time limit per test 2 seconds memory limit per test 256 megabytes input standar ...

  3. jmeter 函数助手里的P,property的使用

    1.函数助手里的 p及property的使用 ${__P(init,2)} , ${__property(init,start,200)} 可以自行定义变量名称,及变量的默认值 P 变量名为init, ...

  4. Android驱动入门-LED--HAL硬件访问服务层②

    硬件平台: FriendlyARM Tiny4412 Cortex-A9 操作系统: UBUNTU 14.04 LTS 时间:2016-09-21  16:58:56 为了避免访问冲突,则创建了硬件访 ...

  5. jQuery学习之jQuery Ajax用法详解

    jQuery Ajax在web应用开发中很常用,它主要包括有ajax,get,post,load,getscript等等这几种常用无刷新操作方法,下面我来给各位同学介绍介绍. 我们先从最简单的方法看起 ...

  6. git删除文件需要注意的事项

    当commit提交一个文件a到本地仓库中,然后又git rm a 删除这个文件(),再执行git push后,同样会把a文件push到远程仓库.并且这个时候执行git pull并不会从远程仓库拉取a文 ...

  7. css3 @font-face设置嵌入字体

    @font-face能够加载服务器端的字体文件,让浏览器端可以显示用户电脑里没有安装的字体

  8. k-d tree 学习笔记

    以下是一些奇怪的链接有兴趣的可以看看: https://blog.sengxian.com/algorithms/k-dimensional-tree http://zgjkt.blog.uoj.ac ...

  9. Linux 进程详解

    Linux内核的七大区间 .进程管理(进程创建,进程的三种状态,进程间的调度,调度算法...) .内存管理(段式管理(Linux所有段都从0开始),页式管理--地址偏移量) .系统调用(C语言库函数的 ...

  10. [TED] New video technology that reveals an objects hidden properties

    通过视频中,即使1微米的震动,都能够还原成声音. 程序算法结合基础学科,能够发挥出接近无限的力量, 深入挖掘物理特性,形成你想都想不到的效果. 很多技术你都不知道,怎么和国家对抗?所以还是要遵纪守法 ...