`

上海群硕软件公司的一道Java笔试题

 
阅读更多
原题地址:点击查看
要求是写出结果,并说明为什么。
据回忆程序是这样的:
package org;

public class Test
{

    
public static void main(String[] args)
    
{
        A a 
= new B();
        a.print();
    }


}


class A
{
    
private int i = 1;
    
public A()
    
{
        
int i = 2;
    }

    
    
public void print()
    
{
        System.out.println(
"The result is:" + i);
    }

}


class B extends A
{
    
private int i = 3;
    
    
public B()
    
{
        
int i = 6;
    }

    
    
public void print()
    
{
        System.out.println(
"The result is:" + i);
    }

}

输出结果是:3
此题考查的是多态.
在这里是父类的引用指向子类的对象.
父类的引用只能访问子类和父类共有的
方法.
这个程序我通过Eclipse和Debug程序观察它的
执行顺序是这样的:
package org;

public class Test
{

    
public static void main(String[] args)
    
{
        A a 
= new B();
        a.print();
    }


}


class A
{
    
//3
    private int i = 1;
    
//2
    public A()
    
{
        
//4
        int i = 2;
    }

    
    
public void print()
    
{
        System.out.println(
"The result is:" + i);
    }

}


class B extends A
{
    
//5
    private int i = 3;
    
//1
    public B()
    
{
        
//6
        int i = 6;
    }

    
    
public void print()
    
{
        System.out.println(
"The result is:" + i);
    }

}


现在将程序稍微改动一下:
package org;

public class Test
{

    
public static void main(String[] args)
    
{
        A a 
= new B();
        a.print();
    }


}


class A
{
    
//3
    private int i = 1;
    
//2
    public A()
    
{
        
//4
        int i = 2;
    }

    
    
public void print()
    
{
        System.out.println(
"The result is:" + i);
    }

}


class B extends A
{
    
//5
    private int i = 3;
    
//1
    public B()
    
{
        
//6
        int i = 6;
    }

    
    
public void print2()
    
{
        System.out.println(
"The result is:" + i);
    }

}


这时输出结果就是1了.
因为父类的引用无法访问子类独有的方法.
分享到:
评论

相关推荐

    群硕软件公司的软件笔试试题

    群硕软件公司的笔试题目涵盖了多个IT领域的知识点,主要包括编程语言(Java、C++、C#)、操作系统(OS)、数据结构、面向对象编程、内存管理、设计模式和逻辑思维能力。以下是对这些知识点的详细说明: 1. **二叉树...

    群硕软件校园招聘笔试题

    这是2012年群硕软件校园招聘笔试题,有意的可以参考一下。

    java笔试题笔试题

    java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 ...

    西安软件公司java笔试题

    西安的软件行业对Java开发人员的需求旺盛,许多公司在招聘过程中会设置Java笔试环节来测试候选人的技术实力。这些笔试题目通常涵盖了Java编程的基础知识、核心概念以及进阶应用,旨在全面评估应聘者的编程能力、问题...

    上海交通银行JAVA笔试编程题

    上海交通银行的JAVA笔试编程题主要考察应聘者的Java编程基础以及在实际问题中的应用能力。这类题目通常涵盖多个方面,包括但不限于数据类型转换、字符串处理、字符编码与解码等核心概念。以下是对这些知识点的详细...

    java面试笔试资料java笔试题大集合及答案题库java笔试题汇总资料188个合集.zip

    100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码.doc 25个经典的Spring面试问答.docx JavaEE学习笔记.pdf java_Java_学习笔记.pdf Java_Performance.pdf java代码...

    最新各大公司JAVA笔试题及答案

    京东最新各大公司JAVA笔试题及答案最新各大公司JAVA笔试题及答案最新各大公司JAVA笔试题及答案最新各大公司JAVA笔试题及答案最新各大公司JAVA笔试题及答案最新各大公司JAVA笔试题及答案最新各大公司JAVA笔试题及答案...

    农行Java笔试题

    【标题】"农行Java笔试题"涉及到的Java知识点涵盖了编程基础、面向对象特性、集合框架、多线程、异常处理、IO流、网络编程、数据库操作等多个领域,这些都是Java程序员必须掌握的核心技能。 首先,从编程基础角度来...

    100家大公司JAVA笔试题汇总

    根据给定文件的信息,我们可以总结出以下几个重要的Java知识点: ...这些知识点涵盖了Java的基础概念、面向对象编程特性、异常处理、Servlet编程以及JSP技术等方面,对于准备Java笔试的人来说是非常重要的复习材料。

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB.zip

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB“ 100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码.doc 25个经典的Spring面试问答.docx 8张...

    Java笔试题大集合及答案(另附各大公司笔试题)

    本资料集合了大量Java笔试题,旨在帮助求职者全面复习并准备Java相关的笔试环节,同时包含了各大公司的经典试题,以期提供更丰富的实践应用场景。 1. **基础语法**:这部分主要考察对Java基本语法的理解,如变量...

    Java笔试题代码.png

    该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题

    2020 兴业银行Java笔试题

    【Java笔试题解析】 在2020年兴业银行的Java笔试中,涉及了多个核心的Java编程和技术概念。以下是对部分题目进行的详细解答: 1. 输入一个正整数,计算并输出距离它最近的对称数 对称数是指从左向右读和从右向左...

    变态版java笔试试题

    Java 笔试试题变态版知识点总结 Java 笔试试题变态版是 Java 开发者面试的常见题目,涵盖了 Java 基础知识、垃圾收集器、字符串、Math 函数、线程、数组、多态性、Set 集合等方面。 一、垃圾收集器(GC) 垃圾...

    2016年4月方正Java软件工程师笔试题

    【标题】2016年4月方正Java软件工程师笔试题 这是一份针对2016年4月方正公司招聘Java软件工程师时所使用的笔试题目集。方正集团是中国知名的IT企业,其对Java工程师的技术要求通常涵盖了基础语法、面向对象编程、...

    吉联新软件公司JAVA笔试题编程资料

    吉联新软件公司JAVA笔试题

    阿里软件JAVA笔试题

    阿里软件JAVA笔试题是阿里巴巴公司为招聘软件开发工程师所设计的一份笔试题目,涵盖了JAVA语言、数据结构、算法、设计模式、数据库等多方面的知识点。 本题目共有15道题目,涵盖了以下几个方面: 逻辑推理 1. 甲...

    100家大公司java笔试题汇总

    Java笔试题汇总 Java是最流行的编程语言之一,在软件开发行业中非常常用。以下是Java笔试题汇总,涵盖了Java的多个方面,包括Java基础、Java面向对象编程、Java多线程、Java网络编程、Java数据库编程等。 Java...

    著名国企的JAVA笔试题

    某著名国企的JAVA笔试题,内部资料 著名国企的JAVA笔试题

Global site tag (gtag.js) - Google Analytics