`
dafan125
  • 浏览: 15271 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java属性方法执行顺序

    博客分类:
  • Java
阅读更多

 

样题一

class P {

    private int val = 10;

 

    public void output() {

        System.out.println("P.output(),val+" + val);

    }

 

    public P() {

        System.out.println("P constructor");

        output();

    }

}

 

public class A extends P {

    private int val = 1;

 

    public void output() {

        System.out.println("A.output(),val=" + val);

    }

 

    public A(int val) {

        this.val = val;

        System.out.println("A constructor");

    }

 

    public static void main(String[] args) {

        A a = new A(5);

    }

}

答案:P constructor  A.output(),val=0  A constructor

 

样题二

 

class parent {

    public parent() {

        System.out.println("parent...");

    }

}

 

class child extends parent {

    brother b = new brother();

    public child() {

        System.out.println("child...");

    }

 

}

 

class brother {

    public brother() {

        System.out.println("brother...");

    }

}

 

public class Testchild {

 

    /**

     * @param args

     */

    public static void main(String[] args) {

        System.out.println(new child());

 

    }

 

}

答案:parent...  brother...  child...

 

结论:属性的优先级高于方法,父类构造方法高于自身构造方法,重写父亲类的方法高于本身属性执行 。

分享到:
评论

相关推荐

    java面试题静态加载顺序构造方法

    Java中的继承与静态static等的执行先后顺序的面试题 java面试题静态加载顺序构造方法 继承与static 面试题目如下:请写出程序执行完成之后的结果。 package extend; public class X { Y y=new Y(); ...

    Java类的基本运行顺序

    本文将通过具体的代码示例,详细解析Java类的基本运行顺序,帮助开发者更好地掌握程序执行逻辑,从而提高编程效率。 #### 示例一:简单类的运行顺序 考虑以下Java类`Test`: ```java public class Test { ...

    Java常见笔试、面试题目深度剖析,方法重写详解、静态代码块与构造方法执行顺序问题

    本文将深度剖析几个常见的Java面试题目,包括方法重写、静态代码块和构造方法的执行顺序。 首先,我们来讨论**方法重写(Override)**。在面向对象编程中,子类可以继承父类的属性和方法,有时需要根据自己的需求对...

    java List中对象多属性排序及各属性排序设置

    总结来说,Java中的List可以通过自定义Comparator或者利用泛型和方法引用来实现对象多属性的动态排序。这种技术在处理复杂数据结构时非常有用,使得代码更加简洁且易于维护。通过学习和实践这部分内容,开发者可以...

    运用注解改变反射之后类属性的顺序

    在Java编程中,反射是一种强大的工具,它允许我们在运行时检查和操作类、接口、字段和方法。然而,当我们通过反射获取类的属性时,可能会遇到一个常见的问题:属性的顺序并不总是按照我们期望的方式呈现。默认情况下...

    Swing页面属性的设置顺序

    在Java的Swing库中,页面属性的设置顺序是一个关键概念,这关乎到组件的显示效果和程序的正确运行。Swing是Java提供的一种轻量级GUI(图形用户界面)框架,它允许开发者创建丰富的桌面应用程序。理解Swing组件属性的...

    java中子类继承父类,程序运行顺序的深入分析

    本文将深入分析Java中子类继承父类时的程序运行顺序,这对于理解面向对象编程的执行机制至关重要。 首先,我们需要明确Java程序的执行流程。当一个类被加载时,会按照以下顺序执行: 1. **静态变量初始化**:首先...

    Drools规则执行顺序

    Drools 是一个开源的Java决策管理平台,它允许开发者使用规则语言来编写业务逻辑,这些规则可以按特定顺序执行,以处理复杂的业务场景。 在 Drools 中,规则的执行顺序主要由以下因素决定: 1. **规则优先级**:...

    java实现根据方法查看方法参数名称

    要获取名称,我们需要在解析时利用注解处理器,因为参数名称通常在调试信息(如LocalVariableTable属性)中存储,这部分信息可以通过ClassReader的accept方法传递给ClassVisitor的visitLocalVariableTableAttribute...

    java 继承关系的加载顺序

    在Java编程语言中,继承是面向对象特性的重要组成部分,它允许一个类(子类)从另一个类(父类)继承属性和方法。了解Java中继承关系的加载顺序对于理解和优化程序性能至关重要。以下是对这个主题的详细阐述: 1. ...

    Java 普通代码块静态代码块执行顺序(实例讲解)

    当运行`main`方法并创建`ClassA`的实例`a`时,以下步骤将按顺序执行: 1. **静态代码块执行**:首先是类的静态部分,因此`ClassA`和`B`的静态代码块会按照它们在代码中出现的顺序依次执行。在这个例子中,我们首先...

    顺序表实现大整数加减JAVA

    `Exercise01.java`通常会包含主函数,用于创建大整数的顺序表对象,执行加减法操作,并打印结果。`SeqList.java`则会定义`SeqList`类及其所有相关方法。 实现过程中,需要注意一些细节问题,例如如何处理负数、如何...

    JAVA代码、方法、运算符大全

    类是Java的对象模型,每个类可以包含属性(变量)和行为(方法)。例如,一个简单的"Hello, World!"程序如下: ```java public class HelloWorld { public static void main(String[] args) { System.out.println...

    java 面试模拟题集

    3. Java类的使用步骤:创建类的对象、定义类、访问类的属性和方法的顺序是:定义类、创建类的对象、访问类的属性和方法。 4. Java中的访问限定符:public、private、default都是Java中的访问限定符,而final是变量...

    成绩输入查询排序(JAVA).pdf

    * 继承:继承父类的方法和属性 * 多态:同一个方法名可以有多种实现 * 抽象:定义一个抽象的概念,不能实例化 在本文档中,我们还将探讨Java语言的其他知识点,包括Java的异常处理、Java的多线程编程和Java的数据库...

Global site tag (gtag.js) - Google Analytics