【Java练习题汇总】《第一行代码JAVA》面向对象基础篇,汇总Java练习题——面向对象:特性、类与对象、数组、String、内部类... ~

Java练习题 · 面向对象基础篇

1️⃣ 面向对象基础篇

一、填空题

  1. 面向对象的三大特征:_______ 、_______ 、_______。
  2. 类由_______和_______组成。
  3. 运算符_______的作用是根据对象的类型分配内存空间。当对象拥有内存空间时,会自动调用类中的_______为对象_______。
  4. 使用_______修饰的类成员称为私有成员。私有成员只能在_______中使用。
  5. 构造方法的名称与_______相同。
  6. _______关键字可以让类中的属性和方法对外部不可见。
  7. this 关键字可以调用本类中的_______ 、_______ 、_______,调用_______时必须放在_______的首行。
  8. 在 Java 中数组排序的方法是______________。

二、 选择题

  1. 如果希望方法直接通过类名称访问,在定义时要使用的修饰符是( )。
    A. static
    B. final
    C. abstract
    D. this

  2. 如果类中没有定义构造方法,系统会提供 一 个默认的构造方法。默认构造方法的特点是 ( )。
    A. 无参数有操作
    B. 有参数无操作
    C. 既无参数也无任何操作
    D. 有参数有操作

  3. 有一个类 Demo, 对与其构造方法的正确声明是( )。
    A. void Demo(int x){… }
    B. Demo(int x){… }
    C. Demo Demo(int x){… }
    D. int Demo(){}

  4. 以下关于面向对象概念的描述中,不正确的一项是( )。
    A. 在现实生活中,对象是指客观世界的实体
    B. 程序中的对象就是现实生活中的对象
    C. 在程序中,对象是通过一种抽象的数据类型来描述的,这种抽象数据类型称为类 (class)
    D. 在程序中,对象是一组变量和相关方法的集合

  5. ( )不属于面向对象程序设计的基本要素。
    A. 类
    B. 对象
    C. 方法
    D. 安全

  6. 下列程序的执行结果是( )。

    public class TestDemo {
          
          
    	public void fun(){
          
          
    		static int i=0;
    		i++;
    		System.out.println(i);
    	}
    	public static void main(String args[]){
          
          
    		TestDemo demo = new TestDemo();
    		demo.fun(;
    	}
    }
    

    A. 编译错误
    B. 0
    C. 1
    D. 运行成功,但不输出

  7. 顺序执行下列程序语句后,则b 的值是 ( )。

    String str = "Hello";
    String b = str.substring(0,2);
    

    A. Hello
    B. hello
    C. He
    D. null

三、 判断题

  1. 没有实例化的对象不能使用。 ( )
  2. 不可以为类定义多个构造方法。 ( )
  3. 使用 static 声明的方法可以调用非 static 声明的方法。 ( )
  4. static 声明的方法可以调用 static声明的属性或方法。 ( )
  5. String对象可以使用==进行内容的比较。 ( )
  6. 垃圾是指无用的内存空间,会被垃圾收集机制回收。 ( )
  7. 构造方法可以有返回值类型的声明。 ( )
  8. 匿名对象是指使用一次的对象,使用之后将等待被垃圾回收。 ( )
  9. 使用static 定义的内部类就成为外部类。 ( )
  10. 多个实例化对象之间不会互相影响,因为保存在不同的内存区域之中。 ( )

四、 简答题

  1. String 类的操作特点。
  2. 简述垃圾对象的产生。
  3. static方法如何调用? 非 static 方法如何调用?
  4. 类与对象的关系是什么? 如何创建及使用对象?
  5. 举例说明子类对象的实例化过程。
  6. 简述 thissuper 关键字的区别。

五、 编程题

  1. 编写并测试一个代表地址的 Address 类,地址信息由:国家,省份,城市,街道,邮编组成, 并可以返回完整的地址信息。
  2. 定义并测试一个代表员工的 Employee 类。员工属性包括“编号”、"姓名”、“基本薪水”、“薪水增长额”,还包括 “计算增长后的工资总额”的操作方法。
  3. 编写程序在将字符串 “want you to know one thing”, 统计出字母 “n”和 字母 “o”的出现次数。
  4. 设计一个 Dog 类,有名字、颜色、年龄等属性,定义构造方法来初始化类的这些属性,定义方法输出 Dog 信息,编写应用程序使用Dog 类。
  5. 字符串操作。
    (1)从字符串 “HELLO Java 技术学习20230713” 中提取日期信息。
    (2)将 “Hello JAVA 高端技术培训学习”字符串中的 “Java”替换为 “JAVA EE”。
    (3)取出 “Java 技术学习20230713”中的第八个字符。
    (4)清除 “Java 技术学习20230713”中的所有“0”。
    (5)从任意给定的身份证号码中提取此人的出生日期。
  6. 编写一个银行账户类,类的构成包括:
    (1)数据成员:用户的账户名称、用户的账户余额;
    (2)方法包括:开户(设置账户名称及余额),利用构造方法完成;
    (3)查询余额功能。

猜你喜欢

转载自blog.csdn.net/LVSONGTAO1225/article/details/131713100