package as; import java.util.Date; public class Test extends Date{ public static void main(String[] args) { new Test().test(); } public void test(){ System.out.println(super.getClass().getSuperclass().getName()); System.out.println(super.getClass().g…
下面程序的输出结果是多少? import java.util.Date; public class Test extends Date{ public static void main(String[] args) { new Test().test(); } public void test(){ System.out.println(super.getClass().getName()); } } 在test方法中,直接调用getClass().getName()方法,返回的是Test类名.…
If you override a method from your superclass (or your superclass's superclass etc.), super.theMethod() will invoke the original method instead of the one you overrode it with. If you did not actual override theMethod, super.theMethod() will act exac…
super和this关键字的特点类似:super代表的是父类对象的引用. 当子父类的成员出现同名时,可以通过super来进行区分. 子类的构造方法中,通过super关键字调用父类的构造方法. public class JaveTeacher extends Teacher{ public JaveTeacher(String name,String scholol){ super(name,school); //父类构造方法完成对相关字段值的初始化 } } 列程: public class Te…
下面程序的输出结果是多少?import java.util.Date;public class Test extends Date{public static void main(String[] args) {new Test().test();}public void test(){System.out.println(super.getClass().getName());}}很奇怪,结果是Test 在 test 方法中,直接调用getClass().getName()方法,返回的是Tes…
首先看一段代码: import java.util.Date;public class Test extends Date{ public static void main(String[] args) { new Test().test(); } public void test(){ System.out.println(super.getClass().getName()); }} 上面这段代码的输出为:Test 可能你会奇怪为什么输出的是Test,而不是Date呢?我明明是调用的supe…
下面程序的输出结果是多少? importjava.util.Date; public class Test extends Date{ public static void main(String[] args) { new Test().test(); } public void test(){ System.out.println(super.getClass().getName()); } } 很奇怪,结果是Test 这属于脑筋急转弯的题目,在一个qq群有个网友正好问过这个问题,我觉得挺有…
1)父类构造函数 java中当调用某个类的构造方法的时候,系统总会调用父类的非静态初始化块进行初始化,这个调用是隐式的,而且父类的静态初始化代码 块总是会被执行,接着调用父类的一个或者多个构造器执行初始化,这个调用也可以通过super进行显式调用. 例如: 父类代码如下: public class Creature {//父类 {//非静态代码块 System.out.println("creature的非静态代码块正在执行"); } public Creature(){ System…
今天dubug代码时发现this.getClass()和super.getClass()得到的竟然是同一个类,都是当前类. 遍访网络资料得出: getClass()不受this和super影响,而是有当前的运行类决定的. 详细解释: getClass public final Class<? extends Object> getClass()返回一个对象的运行时类.该 Class 对象是由所表示类的 static synchronized 方法锁定的对象. 返回: 表示该对象的运行时类的 j…
问题描述: Java三大特性,封装.继承.多态,一直没搞懂其中多态是什么,最近研究了一下,关于父类和子类之间的调用.下面是一个测试类,源代码如下: package com.test; public class BaseClass { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Father f = new Father(); f.sayHi();…