练习05 Java类 - 属性 - 方法定义练习题

更新时间:2024-03-09 12:59:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第4讲Java类,属性和方法定义

[] 选择题

1. 问:下列哪些是合法的类定义语句 A. private class A {} B. public class A ()

C. class A extends Exception, IOException {} D. public class 1A extends Object {} E: public class String {} F: 以上都不是 答:

2. 问:下列哪些不是合法的类定义 A:protected class Object {}

B:public class Object extends Object {}

C:public class Object extends java.lang.Object {} D:class $$$$$$ {} E: class Final {}

F: 以上都是合法的类定义 G: 以上都不是合法的类定义 答:

3.下列定义哪个合法:

A:public class UserString implements String {} B:public class final UserDao extends Object {} C:public class UserBusiness {

private abstract void addUser(String userId, int age); }

D:public class abstract EmployeeInfo implements Object {} E: package com.neusoft.oa.dao;

public class Object {} F:以上定义都不是。 答:

4.类的访问控制符有: A:public B:friend C:private D:protected E:以上都不是 答:

5.类必须有的部分是: A:class 关键字 B:类名称

C:类访问控制符 D:类修饰符 E:类体 { }

F:继承子句 extends

G:实现接口子句 implements H:以上都不需要 答:

6.关于类final修饰符的说法,如下哪些是正确的?

A:final修饰是为了与abstract修饰符对应,没有final的类,应该是abstract。 B:final的类不能创建对象。 C:final类可以创建对象。 E:final类不可以有父类。 F:final类不能有子类。 G:以上说法都不对。 答:

7.关于类abstract修饰符的说法,如下哪些选择是正确的?

A:定义类时,final和abstract修饰符必须选择一个,不能同时都选。 B:abstract修饰的类,可以没有abstract方法。 C:abstract修饰的类,不能有父类。 D:abstract修饰的类,不能有子类。

E:abstract修饰的类,不能有构造方法,因此无法创建对象。 F:abstract修饰的类,必须有abstract方法。 G:以上说法都不对。 答:

8.关于extends继承的说法,如下哪些选择是正确的? A:类只能继承abstract修饰的类。 B:一个类可以有多个父类。 C:一个类可以有多个子类。 D:不能继承final修饰的类。 E:abstract类不能继承其他类。 F:以上说法都不对。 答:

9. 给出代码 //文件类

package fh.oa.value; class Document {

private int no=0; int pageNo=0;

protected int pageNumber=0; public int printNo=0; }

//用户类

package fh.oa.business; class User {

------------------------------- }

问:在User类划线处,下列哪个语句可以编译成功: A: int m=new Document().no;

B: int m=new Document().pageNo;

C: int m=new Document().pageNumber; D: int m=new Document().printNo; E: 以上语句都无法编译成功 答:

10. 给定代码 //类1

packge fh.oa.value; public class Info {

public int n=0; static int m=0; } //类2

package fh.oa.client; public class Client {

public void call() {

----------------------- }

}

问:在类2的划线处,写入如下代码,哪个能够编译成功? A: int i=Info.n;

B: int i=new Info().n; C: int i=Info.m;

D: int i=new Info().m;

E: A-D语句都无法通过编译。 F: A-D语句都可以通过编译。 答:

11. 问:下列哪个类属性定义是合法的: A: final int pi; B: int m;

C: abstract int n=0; D: final int k=k++;

E: 以上都不是合法的属性定义。 答:

12. 问:下列哪些类属性定义是非法的: A: final String name=’A’; B: final static String name;

C: public protected final static String name=”ABC”; D: private String name=”ABC”+”ABC”+true; E: 以上定义都是合法的属性定义 F: 以上定义都不是合法的属性定义。 答:

13. 下列类的代码(一个或多个)可能无法编译: //类1

package payroll; class Employee {

public static String name=”AAA”; public static String getName() {

Return name; } } //类2

package client;

import payroll.Employee;

class Trader extends Employee {

public String name=”BBB”;

}

问:有几种方法可以使以上代码编译通过,以下哪种改造可以成功? A: 类1的package payroll; -> package client;

B: 类1的class Employee 改造为 protected class Employee C: 类2的 package client; 改造为: package payroll; D: 类2 的定义 class Trader extends Employee 改造为:public class Trader extends Employee E: 以上改造都可以。 F:以上改造都不可以。 答:

14. 给出类代码: //类1

package com.ibm.oa.dao; class Info {

public int a=0; static int b=0; } //类2

package com.ibm.oa.dao; class Client {

public static void main(String[] args) {

Info info01=new Info(); Info info02=new Info();

info01.a=info02.a+info02.b++; info01.b=info02.b++; Info.b=info01.b++;

System.out.print(info01.b); System.out.print(info02.b); } }

问:编译以上代码,并运行类Client, 运行的结果是: A:11 B:12 C:22 D:23

E:以上都不是。 答:

15. 给出类的代码 package lhd.construtor;

本文来源:https://www.bwwdw.com/article/ynua.html

Top