【无标题】

简介: 【无标题】

1:父类对子类的引用

A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明:


A a0=new A();

A a1=new B();

A a2=new C();

问以下哪个说法是正确的?()

A.只有第一行能通过编译

B.第1、2行能通过编译,但第3行编译出错

C.第1、2、3行能通过编译,但第2、3行运行时出错

D.第1行,第2行和第3行的声明都是正确的

A虽然不是C的直接父类,但是C依然间接继承了A的内容的,此时可以发生向上转型的。

D正确。

2:如下代码的 结果是什么 ?

class Base {
  Base() {
    System.out.print("Base"); 
  }
}
public class Alpha extends Base {
  public static void main( String[] args ) {
    new Alpha();//1
    //调用父类无参的构造方法
    new Base();//2
  } 
}

A.Base

B.BaseBase

C.编译失败

D.代码运行但没有输出

E.运行时抛出异常

当子类继承父类之后,在实例化子类对象的时候,先要调用父类的构造方法,来帮助父类初始化。

故选B

3:以下程序的输出结果为

class Base{
  public Base(String s){
    System.out.print("B");
  }
}
public class Derived extends Base{
  public Derived (String s) {
    System.out.print("D");
  }
  public static void main(String[] args){
    new Derived("C");
  }
}

A.BD

B.DB

C.C

D.编译错误

当子类继承父类需要先初始化继承过来的父类的成员,此时需要通过super来完成很明显在子类的构造方法当中,并没有通过super调用父类的构造方法。正确写法应该是:

class Base{
  public Base(String s){
    System.out.print("B");
  }
}
public class Derived extends Base{
  public Derived (String s) {
    super(s);
    System.out.print("D");
  }
  public static void main(String[] args){
    new Derived("C");
  }
}

4:以下程序执行的结果是:

class X{
  Y y=new Y();//1
  public X(){//2
    System.out.print("X");
  }
}
class Y{
  public Y(){//3
    System.out.print("Y");
  }
}
public class Z extends X{
  Y y=new Y();//4
  public Z(){//5
    System.out.print("Z");
  }
  public static void main(String[] args) {
    new Z();
  }
}

A.ZYXX

B.ZYXY

C.YXYZ

D.XYZX

本题考察代码的执行顺序:

类Z继承类X。

在继承层次上,先执行父类和子类的静态的再执行父类的实例,父类的构造最后执行子类的实例和子类的构造。

根据以上顺序,我们得出结论:本题中没有静态的。所以先执行1和2,再执行4和5。执行注释1和注释4的时候,分班打印Y。故最终的结果是YXYZ。

故答案为:C

5:以下关于关键字super的描述中,正确的是:

A.super关键字只代表当前对象内部的那一块父类型特征,不包含在子类对象中

B.super关键字不仅可以指代子类的直接父类,还可以直接指代父类的父类

C.子类通过super关键字只能调用父类的方法,而不能调用父类的属性

D.子类通过super关键字只能调用父类的属性,而不能调用父类的方法


本题中主要考察关键字super。首先3种用法为:

1.super.data访问父类中的属性

2.super.func() 访问父类的方法

3.super() 访问父类的构造方法

根据这3点,选项C和D均错。

B中:super只能指代其直接父类,不能指代父类的父类

A正确,super关键字只是在代码层次上提高了代码的阅读性。在子类中代表继承过来的父类型的特征通过super.data就能知道访问的是父类的data。

6:重载的特点:

在 java 中,一个类可同时定义为许多同名的方法,这些方法的形式参数个数,类型或顺序各不相同,传回的值可能各不相同,这种面向对象的特性称为(重载)

7:以下代码运行输出的是

public class Person{
  private String name = "Person";
  int age=0;
}
public class Child extends Person{
  public String grade;
  public static void main(String[] args){
    Person p = new Child();
    System.out.println(p.name);
  }
}

A.输出:Person

B.没有输出

C.编译出错

D.运行出错

子类继承父类之后,会继承父类私有的数据,但是由于private访问修饰符的问题,子类没有办法直接反问该数据。

故编译出错。

8:在 java 中 , 一个类()

A.可以继承多个类

B.可以实现多个接口

C.在一个程序中只能有一个子类

D.只能实现一个接口

Java中一个类只能继承一个类,不能继承多个。
一个类可以实现多个接口
子类和程序之间没有限制关系

9:

public interface IService {
String NAME="default";
}

默认类型等价表示是哪一项:

作业内容

A.public String NAME=“default”;

B.public static String NAME=“default”;

C.public static final String NAME=“default”;

D.private String NAME=“default”;

接口当中的成员变量默认是:public static final
接口当中的成员方法默认是:public abstract

10:下列关于java抽象类的说法哪个正确?

A.某个抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法

B.接口和抽象类是同一回事

C.可以用抽象类直接去实例化创建对象

D.一个类只能继承一个抽象类

A:抽象类A继承抽象类B,此时抽象类A,可以不重写抽象类B中的方法。如果是普通类继承,就得重写

B:接口和抽象类是两个事情

C:抽象类和接口都不可以实例化

D:正确

11:以下哪些方法是Object类中的方法?

A.clone()

B.toString()

C.wait()

D.finalize()

参考Object类的源码我们发现,所有方法均存在。

A:是用来进行对象的克隆

B:将对象的属性等信息,以字符串的形式输出

C:调用wait方法,当前线程进入等待状态

D:在对象被垃圾收集器析构(回收)之前调用,这个方法叫做 finalize( ),它用来清除回收对象。

故选择A,B,C,D.


目录
相关文章
|
Linux Shell Python
在Linux操作系统中,`cd`
在Linux操作系统中,`cd`
188 4
|
C++
【洛谷 P1428】小鱼比可爱 题解(循环)
这是一个编程竞赛问题,题目要求编写一个程序来计算每只鱼在其视野内看到的更不可爱的鱼的数量。给定鱼的总数`n`和每只鱼的可爱程度数组`a[]`,输出每个位置的鱼能看到的更不可爱的鱼的数量。 **摘要:** ```markdown 解决一个编程挑战,计算鱼在“比可爱”比赛中左边有多少条更不可爱的鱼。输入包含鱼的总数`n`和每条鱼的可爱度,输出每条鱼眼中更不可爱的鱼数。提供的C++代码通过遍历数组,比较每只鱼的可爱度并累计小于它的数量,然后输出结果。 ``` 这个摘要在240个字符以内,简要概述了问题的背景、任务和解决方案的概要。
183 0
|
8天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
7天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
346 130
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
19天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1332 8
|
7天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
334 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
6天前
|
监控 JavaScript Java
基于大模型技术的反欺诈知识问答系统
随着互联网与金融科技发展,网络欺诈频发,构建高效反欺诈平台成为迫切需求。本文基于Java、Vue.js、Spring Boot与MySQL技术,设计实现集欺诈识别、宣传教育、用户互动于一体的反欺诈系统,提升公众防范意识,助力企业合规与用户权益保护。
|
18天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1422 87