1.什么是类和对象

类是对具有相同类型的对象的抽象,具有相同特性(数据元素)和行为(功能)的对象的抽象就是类;

对象是对客观事物的抽象,对象就是一个一个具体的实例。

2.面向对象程序设计的三大特性是什么?分别描述这些特性的含义

封装、继承、多态。

封装是将数据以及对数据的操作封装成一个整体。

一旦子类继承父类以后,子类中就获取了父类中声明的所有的属性和方法。

在面向对象语言中,多态指不同事物具有不同的表现形式的能力,接口的多种不同的实现方式即为多态。

3.面向对象与面向过程编程,面向对象程序设计的优点

面向对象是一种以对象作为基本程序结构单位的编程思想;

面向过程是一种以过程为中心的编程思想。

优点:①可实现代码重用②可提高系统的可扩展性③便于系统管理和维护

4.构造方法

①构造方法名必须与所在类名相同

②构造方法没有任何返回值

③可以通过参数表和方法体为生成对象的成员变量赋初始值

5.构造方法与成员方法的区别

①作用不同:构造方法用于创建类的实例并对实例的成员变量进行初始化;成员方法实现对类中成员变量的操作,提供某些功能。

②调用方式不同:构造方法通过new运算符调用;成员方法通过对象调用。

6.什么是重载和重写,他们的区别是什么?

重载是在同一类中可以存在相同的方法名但是参数列表不同;

重写是子类继承父类之后,子类可以对父类中方法的实现过程进行重写,即方法名和参数列表相同、方法体不同。

①重载发生在本类,重写发生在父类与子类之间。

②重载的方法名必须相同,重写的方法名相同且返回值类型必须相同。

③重载的参数列表不同,重写的参数列表必须相同。

7.抽象类与接口的区别

①抽象类可以有已经实现了的方法,也可以有被abstract修饰的抽象方法,而接口根本不存在方法的实现。

②子类使用的关键词不同,实现抽象类使用extends来继承抽象类,而实现接口子类需要使用implements。

③抽象类可以有构造器,而接口不能有构造器。

④可使用的修饰符不同,抽象方法可以有public、protected和default,而接口方法有且只有一个public修饰符。

⑤抽象类只有单继承,而接口可以实现多继承。

8.内部类与匿名类的使用

内部类是在一个类的内部嵌套定义的类;匿名类不具有类名,不具有抽象性,不能派生出子类。

声明内部类时一定要先创建相应的外部类,在外部引用它时必须给出完整的名称,名称不能与包含它的类名相同;

匿名类是一种特殊的内部类,它在一个表达式内部包含一个完整的类定义,通常用在图形用户界面设计中进行各种事件处理。

9.错误和异常

错误是指程序遇到非常严重的不正常状态,不能简单地恢复执行,一般是在运行时遇到的硬件或操作系统的错误;

异常是指非致命错误,一般指在运行程序时硬件和操作系统是正常的,而程序遇到了运行错误。

10.请描述基于TCP的Socket编程服务器与客户端的通信过程

发送方的TCP将用户交来的字节流划分成独立的报文并交给网络层进行发送,而接收方的TCP将接收的报文重新装配交给接收用户。

①服务器初始化②建立连接③数据传输④断开连接

11.事件处理

对鼠标、键盘以及其他输入设备的各种操作或一个活动的发生称为事件;

鼠标、键盘以及其他输入设备操作的组件称为事件源;

事件处理是指一旦事件产生时需要执行的操作。

对事件的处理是通过事件监听器实现的,首先需要在事件源中登记事件监听器,又称为注册事件监听器;

每类事件都有相对应的事件监听器,监听器是接口,根据动作来定义方法,监听器对象必须实现相应的监听器接口。

12.流

按照数据传输的方向,可将流分为输入流和输出流。

输入流(Input Stream),将数据从文件、标准输入或其他外部输入设备中加载到内存。

输出流(Output Stream),将在内存中的数据保存到文件中,或者传输给输出设备。

按照流中元素的基本类型,可将流分为字节流和字符流。

字节流是由字节组成的;字符流是由字符组成的。

13.什么是线程?使用多线程的好处?

如果要实现一个程序内部多个任务并发执行,其中的每个任务就称为线程(Thread)。

Java语言提供了3种线程实现方式:Thread、Runnable和Timer/TimerTask。

线程是在进程独立内存区域内部独立执行的流程;一个进程内部可以有多个线程,这样的程序就是多线程程序。

使用多线程编程有如下优点:

①可以把程序中执行时间长的任务放到后台(交给线程)处理

②用户界面可以更加吸引人

③程序的运行速度可能加快

④在实现一些需要等待的任务时,可以释放一些珍贵的资源

⑤充分利用系统资源

14.线程的生命周期、优先级

线程从创建到执行完成的整个过程称为线程的生命周期。

线程的状态有以下6种:

①新建状态②就绪状态③运行状态④阻塞状态⑤等待状态⑥终止状态

Java语言中提供10个等级的线程优先级,分别用1~10表示,优先级最低为1,最高为10,默认为5。

15.线程互斥和临界区管理

线程互斥是解决线程间竞争关系的手段,线程互斥是指若干个线程都需要使用同一共享资源时,

任何时刻最多允许一个线程使用该资源,其他要使用该资源的线程必须等待,直到占有资源的线程释放该资源。

需要互斥访问的共享变量称为临界资源,并发线程中与共享变量有关的程序段称为临界区。

操作系统对共享一个变量的若干线程进入各自临界区有以下3个调度原则:

①一次至多只能有一个线程在自己的临界区内

②不能让一个线程无限期地留在自己的临界区内

③不能强迫一个线程无限期地等待进入自己的临界区;特别地,进入临界区的任一线程不能妨碍正等待进入的其他线程的进展

Java期末复习总结相关推荐

  1. java switch case怎么判断范围_【转】Java期末复习攻略!

    期末 19年就这样要过去了, 终于到了小时候作文里的未来呢! 然而,期末考试也随之来临了. 不知大家"预习"的怎么样呢? 期末复习资料的放送快接近尾声了 下面康康学长学姐们 怎么教 ...

  2. Java数据结构第五版期末考试_数据结构(java)期末复习

    [单选题]多基因遗传病的发病风险与下列哪个因素无关 [单选题]一般手锯的往复长度不应小于锯条长度的( ). [判断题]机器上所有;零件都必须进行机械加工. [单选题]一般划线精度能达到( ). [填空 ...

  3. Java期末复习速成(八)

    Java期末复习速成(八) 文章目录 Java期末复习速成(八) 泛型 泛型的使用 用泛型表示类 用泛型表示接口 泛型方法 泛型通配符 反射 Class类 Field类 Method类 泛型 在Jdk ...

  4. JSP Java 期末复习整理

    Java 期末复习 第一章 1.1.1 JSP 1.1.2 Jsp 优点 1.2.2 B/S技术工作原理 1.2.3 如何访问动态网页 1.2.4 -- Tomcat目录结构 1.2.6 -- Web ...

  5. Java期末复习小记

    个人网站已经开通了https,正在备案中.不出意外十一月底就能上线了,到时候个人博客和一些好玩的小工具都会放在上面.   最近忙着复习Java和操作系统,第二篇博客到现在才写完.这次主要是记录最近的J ...

  6. Java期末复习——ch02基本类型(进制转换,数据类型转换,汉字编码)

    第一题: /** 写出满足以下要求的 Java 代码.* ① 声明一个float 型变量 value,并赋以初值2.5.* ② 同一行声明 2 个 boolean型的变量 b1 和 b2,其中b2 被 ...

  7. Java期末复习基础知识整理(有点长)

    平台无关: 在一个计算机上编译得到的字节码文件可以复制到任何一个安装了Java运行环境的计算机上直接使用.字节码由Java虚拟机负责解释运行,即Java虚拟机负责将字节码翻译成本地计算机的机器码,并将 ...

  8. Java期末复习题目合集

    题目列表 7-1 一个整数各个位上的最大数字 7-2 十进制转二进制 7-3 判断回文 7-4 学投资 7-5 打印所有的水仙花数 ​7-6 逆序输出整数 7-7 1!+2!+--+N! 7-8 完数 ...

  9. SCAU JAVA期末复习

    第二章 JAVA语言基础与流程控制 1.JAVA语言标识符的规则 ①标识符由字母.数字.下划线和美元符号组成的字符串 ②第一个字符必须为:字母.下划线或$ ③标识符不能是关键字 ④标识符不能是true ...

  10. Java期末复习知识点 下

    碎碎念~ 终于来到了最后一堆啦,但其实好像前面的知识也没有消化地很好,但是会在不断地码代码的过程中好好吸收消化这些知识滴~ 完结撒花~ 在末尾的那一些知识其实自己还是没有理解好,最主要的是怎么把知识转 ...

最新文章

  1. 宁波大学计算机王老师,王翀_宁波大学研究生导师信息
  2. 重庆二师计算机科学与技术,应用型本科院校计算机科学与技术专业一流课程建设思考──以重庆第二师范学院为例...
  3. 提前为小米11让路?小米10高配版官网已缺货
  4. php中连接网页头尾部,网页共用头部和尾部的部分方法
  5. springboot+vue全栈开发_全栈的自我修养: 002使用@vue/cli进行vue环境搭建 (使用Vue,SpringBoot,Flask完成前后端分离)...
  6. 图论及其应用:第二次作业
  7. 计算两经纬度坐标间的距离
  8. ANSYS workbench 有限元分析 学习
  9. 第十五篇,STM32的SPI串行通信协议
  10. 曾经的王者,如今被遗忘的 Android 开发!
  11. 2019-04-26周五宁波和杭州都下雨了,晚饭的鱼粉好大份哦,这是我第一次吃鱼粉!Hhhhhhhh下雨了就给吃点面才暖和,辛苦快递小哥哥了呀,其实这家店就在食堂我看见很多次了懒得买,外卖好像更便宜!
  12. Google支付订单真伪的验证方式
  13. 用智能硬件“折叠时间”,外卖商家正在触摸的数字化未来
  14. python 判断字符串中的的起始、终止子字符串
  15. Android根据语言适配货币符,ios – 使用NSLocale根据国家/地区代码或国家/地区名称获取货币符号...
  16. 第十三周 任务三
  17. R语言基础(用最简单的方式了解学习R语言)
  18. Android 热修复方案分析
  19. C语言-----乘法口诀表打印(多种样式)欢迎采纳
  20. 服务器12种基本故障+排查方法

热门文章

  1. 非因解读 | RPPA蛋白组学全程助力三阴性乳腺癌治疗和研究
  2. rk3568 点亮HDMI
  3. 铁三角在-PL60全自动皮带驱动转盘
  4. hadoop集群之hdfs文件系统常见操作命令
  5. SpringBoot+vue实现前后端分离的高校图书馆座位预约系统
  6. 知识增强图语义理解技术
  7. 国赛----可见光室内定位
  8. 关于vue动画没有效果的解决
  9. 【Appium+python】特殊键盘事件处理-国产机型的搜索处理。
  10. led灯模组是什么东西_现代灯具什么牌子好 节能LED灯新品推荐