常用应届生Java开发笔试面试题(更新中)_大学生转正笔试题 java-程序员宅基地

技术标签: 面试  阿里巴巴  android  前端  后端  学习路线  

Java开发面试题

Java基础篇

Java8大基本数据类型

byte

short

int

long

float

double

char

boolean

占用空间

1字节(B)

2字节

4字节

8字节

4字节

8字节

不定 默认2字节

JVM未定义

初始值

0

0

0

0

0.0

0.0

空格

false

Java的三大特性

  1. 封装:隐藏内部功能的具体实现,只保留和外部交流数据的接口。例:汽车与发动机,不必知道发动机的实现原理,只需使用汽车给予的接口,插入钥匙。
  2. 继承:一个对象可以从它的父类继承所有的通用的属性和方法,并在无需重新编写原来的类的情况下对这些功能进行扩展;最大的好处是实现代码的高效重用。
  3. 多态:同一个动作作用于不同的对象 所产生不同的行为。例:人会吃饭,中国人用筷子,美国人用叉子。

面向对象

  1. 面向对象的核心,就是类和对象。Java中的面向对象的思想:万物皆对象。
  2. 类:是对一类事物的描述,是抽象的,看不见,摸不着。
  3. 对象:是实际存在的该类事物的每个个体 也称为实例 是具象的。
  4. 所以面向对象程序设计的重点是类的设计,而不是对象的设计。
  5. 类是对象的描述
    对象叫做类的实例化(Instance)
  6. 类不占内存,对象才占内存。

如果让你推销一款Java产品,你会怎么推销呢?(java的特点)

1.Java是面向对象的
2.Java是跨平台的;一次编译,到处运行
3.Java是多线程的
4.Java有GC,简化了开发
5.Java是分布式的
6.Java现在运用最广泛(有待商榷,python太猛了)
7.支持多线程( C++ 语言没有内置的多线程机制,因此必须调用操作系统的多线程功能来进行多线程程序设计,而 Java 语言却提供了多线程支持);
8.支持网络编程并且很方便( Java 语言诞生本身就是为简化网络编程设计的,因此 Java 语言不仅支持网络编程而且很方便);
9.编译与解释并存;

JVM与字节码

JVM:Java虚拟机(JVM)是运行 Java 字节码的虚拟机。
JVM有针对不同系统的特定实现,目的是使用相同的字节码,它们都会给出相同的结果(一次编译,到处运行)。
字节码:在 Java 中,JVM可以理解的代码就叫做字节码(即扩展名为 .class 的文件),它不面向任何特定的处理器,只面向虚拟机。Java 语言通过字节码的方式,一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可移植的特点。所以 Java 程序运行时比较高效,而且,由于字节码并不针对一种特定的机器,因此,Java程序无须重新编译便可在多种不同操作系统的计算机上运行。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/web18334137065/article/details/126081173

智能推荐

固态硬盘简介-程序员宅基地

文章浏览阅读228次。固态硬盘的存储介质分为两种,一种是采用闪存也就是FLASH芯片作为存储介质,另外一种是采用DRAM作为存储介质。小康先说说使用DRAM的固态硬盘:采用DRAM作为存储介质,目前应用范围较窄。它仿效传统硬盘的设计、可被绝大部分操作系统的文件系统工具进行卷设置和管理,并提供工业标准的PCI和FC接口用于连接主机或者服务器。应用方式可分为SSD硬盘和SSD硬盘阵列两种。它是一种高性能的存储器,而且使..._hfs的固态硬盘如何使用

Kettle与Java集成——Java代码调取运行资源库的Transformation_org.pentaho.di.trans.transmeta.(transmeta.java:336-程序员宅基地

文章浏览阅读2.1k次。下面代码是Java代码调用Kettle4.0版本的Transformation1、Java读取资源库运行Transformation(1)目录类型资源库Java代码import org.pentaho.di.core.KettleEnvironment; import org.pentaho.di.core.exception.KettleException; impo_org.pentaho.di.trans.transmeta.(transmeta.java:3365)

Win8.1+VS2010环境下Qt4.8.7编译_vs2010_qt4.8.7如何编译pdb文件-程序员宅基地

文章浏览阅读2.9k次。参考http://www.cnblogs.com/elect-fans/archive/2012/03/29/2422816.html实现Win8.1+VS2010环境下Qt4.8.7编译_vs2010_qt4.8.7如何编译pdb文件

C++批量修改文件后缀名(提供多种方法)_修改文件后缀怎么改c++-程序员宅基地

文章浏览阅读2.6k次,点赞2次,收藏6次。C++批量修改文件后缀名的Qt程序方法一:#include "stdafx.h"#include <stdio.h>#include <fstream>#include <Windows.h>#include <cstdio>#include <iostream>#include <string>#include <io.h>#include <vector>#include <_修改文件后缀怎么改c++

Spring Boot Admin2 实例状态监控详解-程序员宅基地

文章浏览阅读3k次,点赞108次,收藏158次。在微服务中集成Spring Boot Admin 的主要作用之一就是用来监控服务的实例状态,并且最好是当服务DOWN或者OFFLINE的时候发消息提醒,SBA2 提供了很多提醒方式,并且SBA2 已经集成了钉钉,只要进行少量配置即可将状态变更发送到钉钉_admin2

js验证注册页面(用户名、手机号、邮箱、单位名称、单位地址、联系人姓名、)_js校验公司名称-程序员宅基地

文章浏览阅读3.1k次。使用js+jQuery验证注册页面<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><%@include file="/common/global.jsp"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML ..._js校验公司名称

随便推点

图像 分割 - Fast-SCNN: Fast Semantic Segmentation Network (arXiv 2019)-程序员宅基地

文章浏览阅读582次,点赞2次,收藏3次。编码器-解码器框架是用于离线语义图像分割的最先进的框架。随着自主系统的兴起,实时计算越来越受欢迎。在本文中,我们介绍了快速分割卷积神经网络(Fast-SCNN),这是一种针对高分辨率图像数据(1024×2048px)的实时语义分割模型,适用于低内存嵌入式设备上的高效计算。在现有的两种快速分割分支方法的基础上,我们引入了我们的“学习下采样”模块,该模块同时计算多个分辨率分支的低级特征。_fast-scnn

python read_csv dtype_Pandas read_csv low_memory和dtype选项-程序员宅基地

文章浏览阅读1.8k次。已弃用的低内存选项low_memory选项没有被正确地弃用,但它应该被弃用,因为它实际上没有做任何不同的事情[source]出现此low_memory警告的原因是,猜测每个列的数据类型需要大量内存。Pandas试图通过分析每列中的数据来确定要设置的数据类型。数据类型猜测(非常糟糕)Pandas只能在读取整个文件后确定列的数据类型。这意味着在读取整个文件之前无法真正解析任何内容,除非您在读取最后一个..._pandas low_memory

【C语言入门】将任意10个数输入一维数组,找出最大数放到最前面,最小数放到最后面。_编写程序,从键盘录入n个数放入一维数组中,找出最大数放到最前面,最小数放到最后面-程序员宅基地

文章浏览阅读1.3k次,点赞3次,收藏6次。题目:将任意10个数输入一维数组,找出最大数放到最前面,最小数放到最后面。_编写程序,从键盘录入n个数放入一维数组中,找出最大数放到最前面,最小数放到最后面

python常用的魔术方法-程序员宅基地

文章浏览阅读285次。在 Python 中,魔术方法是用双下划线 (__) 开头和结尾的特殊方法。这些方法的名字有一定的规则,可以实现特殊的功能。下面是一些常用的魔术方法:__init__:构造方法,在创建对象时自动调用。__str__:将对象转化为字符串时使用。__repr__:获取对象的字符串表示,一般用于调试。__len__:获取对象长度时使用。__getitem__:使用下标访问对象中的元素时使用。..._python魔术方法

当面对 RPA 与 AI, 你应该选择什么_当面 矢量-程序员宅基地

文章浏览阅读183次。不断扩展的人工智能领域包括许多术语和技术。这自然会导致重叠和混乱。人工智能和机器学习经常被一起提及,以至于某些人(尤其是非技术人员)可能会认为它们是同一个人。它们是相关的,但实际上不是可互换的术语:机器学习是 AI 的子集或特定学科。那是一个相对简单的例子。开始将其他术语和技术添加到组合中,并且进一步误解的机会比比皆是。破解术语和技术之间的差异需要借助机器人流程自动化(RPA)和 AI 来解决..._当面 矢量

7.MyBatis-Plus 通用Service和通用Mapper之间的关系_mybatisplus service和mapper-程序员宅基地

文章浏览阅读4.8k次,点赞12次,收藏21次。MyBatis-Plus 通用Service和通用Mapper之间的关系学了MyBatis-Plus之后发现通用Service和通用Mapper实现的功能好像都是一样的,但是其中的方法名又不同,因此想搞清楚他们之间的关系。项目结构如下,主要关注department相关的部分DepartmentMapper接口继承BaseMapper接口DepartmentServiceImpl继承ServiceImpl对象并实现DepartmentService接口首先摆出官网上对通用Service和通用Map_mybatisplus service和mapper

推荐文章

热门文章

相关标签