WARNING!!!

大二软件工程专业的同学们:本周三(11.6)16:00至18:00,紧张刺激的面向对象编程与设计理论课考试将要与你见面啦!

那么

YOU

准备好面向你的对象了吗?

如果你现在内心紧张,手心流汗,赴shi之心呼之欲出……

别慌!!!

提示

您有一份面向对象目标问题+答案待查收!

闲话少叙,上稻草~

(为啥是稻草?)

(因为能救命 ╮(╯▽╰)╭)

Unit 1

Q1

面向对象中类的概念?

类是创建对象的模版,定义了对象的属性和方法;类中的属性赋予确定的取值得到该类的一个对象,对象是类的实例。

Q2

阐述类属性和操作的概念和作用?

属性:已被命名的类的特性,描述对象的特征

操作:是类的特征,用来定义如何激活该类对象的行为,类操作是对类属性的处理

Q3

面向对象中对象的概念?

所要解决的现实世界的问题抽象为软件对象;需求描述问题域中拥有属性的实体或概念都可以看做对象。

Q4

阐述类与对象的联系?

类是一组对象的描述;

类是创建对象的模板,对象是类的实例;

类是一种数据类型,可以使用类名称声明对象变量。

Q5

阐述类与对象的区别?

抽象和具体,模板与实例

Q6

类是否是数据类型?与你学过的其他类型进行比较,有何不同?

类是一种数据类型,称之为对象类型,所以可以使用类名称声明对象。类可以包含多个数据类型。

Q7

变量UML类图中类及其类中属性和方法如何表示?

类名,类属性,类方法,各占一行

Q8

UML类图中类与类之间的继承关系如何表示?其代表的含义是什么?

实心线空心箭头;指一个类自动拥有另一个类的所有数据和操作。

Q9

UML类图中类与类之间的关联关系如何表示?其代表的含义是什么?

单向为实心箭头,双向为实心直线;指一个类拥有另一个类的一到多个对象。

Q10

如果UML类图中类A与类B之间是1对多的关联关系,关联属性的数据类型是什么?

类B对象的容器类型。

Q11

如果UML类图中类与类之间1对1的关联关系中,关联属性的数据类型是什么?

被关联类的对象类型。

Q12

根据用户需求,建立面向对象设计方案—UML类图的方法和步骤是什么?

分析需求,找出类,类之间的关系,类的属性,定义类的方法,绘制类图。

Q13

一般情况下,包含容器的类应该提供哪些常用的方法?

增删改查,add, remove, set, get,获取容器,返回容器迭代器或迭代器接口。

Unit 2

Q1

根据Java类,Java对象变量如何声明?Java对象如何创建与使用?

类名 变量名(参数);new方法

Q2

什么是Java引用(变量),其内涵是什么?

地址,其值指向对象所在内存中的位置。

Q3

什么是实例变量?实例变量的内存分配和访问有什么特征?

实例变量是类内的属性,在堆中分配了一块内存,有自己独立的内存空间,不共享。

Q4

什么是静态变量?静态变量的内存分配和访问有什么特征?

静态变量是加了static的属性,分配的内存在所有对象共享的内存空间。

Q5

什么是实例方法?实例方法有什么特征?实例方法是如何访问的?

实例方法是类内的方法,能访问实例对象和静态对象。

Q6

什么是静态方法?静态方法有什么特征?静态方法是如何访问的?

静态方法是加了static的方法,不能直接访问实例变量,只能访问静态变量

Q7

什么是方法的重载?

在一个类中定义多个同名的方法,但每个方法具有不同的参数类型或个数

Q8

Java的访问权限限制包含哪三个方面,其内容分别是什么?

Java包:位于同一个包内的类可相互引用,Java.lang包中的类可直接引用,其他都要import语句或类的全名

Java类:缺省时(friendly)该类只能被同一个包里的访问和引用,public时任意

Java类成员:private时该类自身;缺省时包内;protected时该类自身、包内、其他包中该类的子类;public时任意

Q9

Java包的概念与作用?

Java包 (package)中存放的是一个或多个相关类的集合,用来组织、管理类,解决类命名冲突的问题;包对应于文件系统的目录层次结构,它通过“.”来指明目录的层次,类位于包中,即类位于相应的文件夹中

Q10

Java类的访问权限及含义?

缺省时(friendly)该类只能被同一个包里的访问和引用,public时任意;private没有任何类能访问使用;protected成员允许其子类访问,无论子类是否与基类位于同一个包。

Q11

Java类成员的访问权限及含义?

private时该类自身;缺省时包内;protected时该类自身、包内、其他包中该类的子类;public时任意

Q12

如何应用String类实现与字符串处理有关的功能?

连接号“+”或 类String的静态方法valueOf( )可以将数值转化为字符串char[]

==可以比较基本数据类型的数值,建议用equals

Q13

如何应用StringTokennizer类完成与字符串解析有关的任务?

public  StringTokenizer(String str, String delim)

public String nextToken()

public boolean hasMoreTokens()

public int countTokens()

Q14

控制台读写如何编程?

//输入输出流

private static BufferedReader stdIn = new BufferedReader(

new InputStreamReader(System.in));

private static PrintWriter stdOut = new PrintWriter(System.out, true);

private static PrintWriter stdErr = new PrintWriter(System.err, true);

String  input = stdIn.readLine();

//返回从控制台读取的字符串类型的对象,读取一整行

Q15

哪几个关键构成了Java异常处理机制的基本框架?

throw try-catch throws

Q16

throw关键字的用法及含义?

throw new  Exception( );

当方法在执行过程中遇到异常情况时,将异常信息封装为异常对象,然后抛出。

Q17

try-catch关键字的用法及含义?

try代码块中写执行代码,catch代码块写它能捕获的异常类型。多个catch从上到下只执行一个。

finally 块必须与 try 或 try/catch 块配合使用

无论是否发生异常,finally都一定执行(除非Java虚拟机中途终止运行)

Q18

Throws关键字的用法及含义?

本类无try-catch语句处理这种异常,在类名后使用throws加异常类声明该异常交给上一级类处理

Q19

编译器检查的异常(即checked      Exception)与不做检查的异常(即unchecked Exception)有什么区别?

Unchecked Exception: Error, RuntimeException, NumberFormatException, NullPointerException, IllegalArgumetException不须进行异常处理;

Q20

什么样的注释是Javadoc注释?

/**

* body text

*/

或者/** body text */

Q21

类的Javadoc注释有哪些常用标签?

类成员的Javadoc注释有哪些常用标签?

@author @version @see;

@param @return @exception(@throws) @see

Q22

如何生成Javadoc注释?

javadoc命令

Q23

子类继承基类成员后,对继承成员的访问权限有什么规定?

基类中公有,子类中仍然公有,在子类中可以随意使用,基类中的私有,子类中也私有,子类的对象不可以存取基类的私有成员

Q24

什么是向上转型?

子类对象当基类对象用,但不能调用子类里特有方法

Q25

什么是向下转型?

把基类引用显示地强制转化为子类型对象,并非总是合法的。基类引用指向的是一个子类的对象则可以,其他情况不行(instanceof操作符判断)

Q26

什么是方法的覆写?

在子类中定义一个与基类方法名、返回类型和参数类型均相同但方法体不同的方法称为方法的覆写

Q27

方法覆写后,通过基类型的变量去调用该方法,可能发生什么情况?

自动调用覆写的方法

Q28

equals方法如何覆写?

public boolean equals(Object obj){

}

Q29

什么是变量的多态性?

子类的对象都可以赋给基类类型的变量

Q30

什么是方法的多态性?

通过基类类型的变量调用方法时候,根据基类类型的变量指向的具体类型,绑定具体类型对象的方法体去执行

Java 中数组声明的语法要求是什么?声明时候不允许指定数组大小

Q31

遍历Java中数组的方法?

for(j=0;j

Iterator e=a.iterator();

While(e.hasNext())

for(String str:a)

Q32

Java抽象方法如何定义?

public abstract void  sleep(int  hours);//无方法体

Q33

Java抽象类如何定义?

public abstract class      className { }

/**只可作为基类,不能调用其构造函数,继承时实现所有方法才能实现非抽象类**/

Q34

Java 抽象类与一般类的相同点是什么?

都是类,内部定义了成员

Q35

Java 抽象类与一般类的不同点是什么?

一般类里只能有非抽象方法而抽象类里有抽象或非抽象方法,一般类可以实例化而抽象类不可以

Q36

Java接口如何定义?

public  interface  Device {} //无构造方法,无方法体;所有实现interface的方法都必须被声明为public.

Q37

Java 接口与一般类、抽象类的相同点是什么?

都可声明自身对象类型的变量,都可被其他类继承。

Q38

Java接口与一般类、抽象类的不同点是什么?

抽象类可以定义成员变量而接口定义的均是静态常量,抽象类可以有自己的实现方法而接口的方法均是抽象的方法,抽象类可以定义构造函数而接口不包含,其他类只能继承一个抽象类而可以实现多个接口

Q39

Java接口中的多继承是什么含义?

Java类之间不允许多继承,只可以单继承和实现多接口。但接口可以继承多接口

Unit 3

Q1

什么情况下使用单一实例模式(Singleton Pattern) ?

一个类仅允许一个对象被创建和使用;一个类属性不能被修改;一个类只有方法没有属性

三要素:一个数据类型为类自身的静态私有属性,一个私有构造方法,一个公共静态方法返回唯一对象

Q2

单一实例设计模式如何编程实现?

private static XMLSalesFormatter singletonInstance;

private XMLSalesFormatter() {}

public static synchronized XMLSalesFormatter getSingletonInstance() {

if (singletonInstance == null) {

singletonInstance = new XMLSalesFormatter();

}

return singletonInstance;

}

Q3

什么情况下使用策略模式?

多个类中方法实现同样功能,方法声明特征一样,方法体不同

Q4

策略模式的优势是什么?

用户需要变化时,修改量很少,而且修改快速

Q5

面向对象设计的原则是什么?

1.找出应用中可能需要变化之处,把它们独立出来, 把变化的部分“封装”起来

2.针对接口编程,针对超类型编程

Q6

教材中的其它设计模式包括哪些?他们的设计方案分别是什么?

工厂模式,将变化的代码封装在一个新类中,用新类来创建对象;观察者模式;适配器模式:适配器将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

Unit 4

Q1

字节输入流是哪个类?常用功能包括哪些?

InputStream ;read, close

子类为介质流:FileInputStream(String  name)

StringBufferInputStream ,append(), toString()

ByteArrayInputStream, System.in

Q2

字节输出流是哪个类?常用功能包括哪些?

OutputStream: write, flush,

子类为介质流:ByteArrayOutputStream

FileOutputStream

Q3

字符输入流是哪个类?常用功能包括哪些?

Reader: read, close

子类:FileReader, StingReader, CharArrayReader

Q4

字符输出流是哪个类?常用功能包括哪些?

Writer: write, flush

子类:FileWriter, StingWriter, CharArrayWriter

Q5

字节输入介质流有哪些,它们的常用的功能包括哪些?

子类:FileInputStream(String  name)

StringBufferInputStream ,append(), toString()

ByteArrayInputStream, System.in

Q6

字节输出介质流有哪些,它们的常用的功能包括哪些?

子类:ByteArrayOutputStream

FileOutputStream

Q7

字节输入过滤流有哪些,它们的常用的功能包括哪些?

FilterInputStream//继承和关联inputStream

BufferedInputStream, DataInputStream//读取基本类型(继承FilterInputStream)

Q8

字节输出过滤流有哪些,它们的常用的功能包括哪些?

FilterOutputStream//继承和关联outputStream

BufferedOutputStream //可以调用flush()来清出缓冲区内容。

DataOutputStream

PrintStream, System.out

Q9

Java介质流与过滤流之间的关系用到了什么设计模式?

Decorator设计模式

Q10

字符输入介质流有哪些,它们的常用的功能包括哪些?

FileReader, StingReader, CharArrayReader

Q11

字符输出介质流有哪些,它们的常用的功能包括哪些?

FileWriter, StingWriter, CharArrayWriter

Q12

字符输入过滤流有哪些,它们的常用的功能包括哪些?

Bufferreader

Q13

字符输出过滤流有哪些,它们的常用的功能包括哪些?

BufferWriter, ,PrintWriter

Q14

面向字节流的基本数据类型数据的读写如何编程?

DataInputStream in =

new DataInputStream(

new BufferedInputStream(

new FileInputStream("Data.txt") ;

DataOutputStream out =

new DataOutputStream(

new BufferedOutputStream(

new FileOutputStream("Data.txt")    ;

Q15

面向字符流的文件和控制台的读写如何编程?

读控制台

BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));

String input = stdIn.readLine();

写控制台:

PrintWriter stdOut = new PrintWriter(System.out, true);

stdOut.println(“”);

读文件:

BufferedReader fileIn = new BufferedReader(new FileReader(“filename”));

String line = fileIn.readLine();

写文件:

new PrintWriter(new FileWriter(“filename”));

fileOut.println("A line of output.");

参考:private void writeFile(String filename, String content) throws IOException {

File file=new File(filename);

if(!file.exists()) {

file.createNewFile();

}

PrintWriter fileOut = new PrintWriter(file);

fileOut.println(content);

fileOut.close();

}

既然你已经翻到这儿了,是不是对考试胸有成竹了·呢?

加油吧,相信你一定能收获满意的成绩!

Fighting!

编辑:刘烁

审核:陈智通 张琨

关注我们,考试必胜

vb error bc30469: 对非共享成员的引用要求对象引用_提问||准备好面向你的对象了吗?...相关推荐

  1. C++ const对象与非const对象的相互调用、const成员函数与非const成员函数的相互调用

    1)const对象可以调用非const成员函数吗? 答:不能.const修饰的对象实则修饰的是该对象的this指针,并且const修饰的成员不能进行修改,如果使用const调用非const成员函数,可 ...

  2. 为什么static成员的类型可以是类本身?又为什么非static成员被限定声明为其自身类对象的指针或引用?...

    看到<C++ Primer>中的一句话,才想起分析一下这个问题:"static 数据成员的类型可以是该成员所属的类类型.非 static 成员被限定声明为其自身类对象的指针或引用 ...

  3. 成员函数对象类的const和非const成员函数的重载

    首先声明,我是一个菜鸟.一下文章中出现技术误导情况盖不负责 1. 类的const成员函数与非const成员函数的载重 #include <iostream> #include <st ...

  4. const对象不能调用非const成员函数

    在C++中,可以用const来定义一个const对象,但const对象不可以调用类中的非const成员函数 原因 引发原因:: 由调用成员函数时隐式传入的当前对象的this指针引起. 非const成员 ...

  5. 【Excle数据透视表】如何创建非共享缓存的数据透视表

    一般情况下,利用同一个数据源创建多个数据表时,默认创建的是共享缓存的数据透视表.刷新一个数据透视表时会影响其他数据透视表的展示结果. 解决方案 创建非共享缓存的多个数据透视表 步骤一 单击工作表数据任 ...

  6. 1线程概念:线程和进程之间的关系,线程间可共享资源,线程间非共享资源,线程的优缺点

     1线程概念 1.1什么是线程 1.1.2线程和进程的关系 1.轻量级进程(light-weightprocess),也有PCB,创建线程使用底层函数和进程一样,都是clone. 2.从内核里看进 ...

  7. 多线程-非共享数据(python 版)

    多线程-非共享数据 对于全局变量,在多线程中要格外小心,否则容易造成数据错乱的情况发生 1. 非全局变量是否要加锁呢? #coding=utf-8import threadingimport time ...

  8. //5. 有若干本图书,图书信息包括图书书名、作者、出版社和价格。要求输出图书价格(const成员函数), //显示图书书名、作者、出版社(非const成员函数)、根据图书书名查找图书并显示相关信息等

    //5. 有若干本图书,图书信息包括图书书名.作者.出版社和价格.要求输出图书价格(const成员函数), //显示图书书名.作者.出版社(非const成员函数).根据图书书名查找图书并显示相关信息等 ...

  9. const对象只能调用const成员函数、不能调用非const成员函数;非const对象可以调用const成员函数

    引发原因: 由调用成员函数时隐式传入的当前对象的this指针引起. 1. 非const成员函数中的隐式参数:classA* this 2. const成员函数中的隐式参数:const classA* ...

最新文章

  1. java 模仿支付成功_揭秘Java工程师薪资为何这么高,教你如何成为架构师拿50W年薪!...
  2. JS 之 数据类型转换
  3. [html] 如何给页面添加追加右键菜单(原右键菜单功能保持不变)
  4. 【LeetCode笔记】剑指 Offer 10-I. 斐波那契数列 (Java、递归、动态规划)
  5. 安装ntop及快速安装rrdtool的方法
  6. jmeter mysql 执行计划_[PT_06] 性能测试-场景设计与实现(登录随机购买业务)
  7. 计算机打印状态错误,打印机状态错误怎么办 打印机状态错误解决方法【图文】...
  8. 关于列表的一些操作函数
  9. dell电脑装双系统linux,戴尔电脑怎么装双系统?戴尔装win7+win10双系统详细教程
  10. android方向传感器 指南针,Android 方向传感器的两个应用:指南针和水平仪
  11. linux服务器光衰,交换机、linux光衰查询
  12. 韩信点兵问题(中国剩余定理)
  13. 小提琴1234567位置图解_1秒找到小提琴上的每个调音阶
  14. loadrunner运行场景时,用户卡在run状态且退出时卡在gradual exiting状态
  15. 计算机组成原理平均cpi怎么算_计算机组成原理计算题
  16. SIM卡的密码PIN与PUK密码PIN
  17. JAVA面向对象的思维导图
  18. 关于【你们数据仓库是怎么设计的】如何回答?
  19. linux驱动 设备驱动模型
  20. docker(17):使用docker构建nginx+phpfpm环境2

热门文章

  1. 为什么“晚上9点钟洗澡的大学生成绩更好”?
  2. 清华特奖答辩前10出炉,两名CS学生3篇顶会一作,有人周读3000页英文论文!
  3. 阎王爷让我给他做个生死簿后台管理系统
  4. 雷军22年前写的代码 你见过吗?
  5. 文本分类的基本思想和朴素贝叶斯算法原理
  6. 如何使用OpenCV实现图像均衡???
  7. 第四章:Spring项目文件上传两种方式(全解析)
  8. 【Smobiler企业APP开发之一】开发环境部署
  9. Chapter 9:Noise-Estimation Algorithms
  10. iterator的使用和封个问题