android笔试题二

图片 1

一 、android系统架构:

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码
B 集成代码生成器
[正面与反面双向](单表、主表、明细表、树形表,急忙支付利器)+快捷表单**
构建器
freemaker模版技术
,0个代码不用写,生成完整的二个模块,带页面、建表sql脚本,处理类,service等一体化模块
C 集成Alibaba数据库连接池druid  数据库连接池  阿里Baba(Alibaba)的
druid。Druid在督察、可扩充性、稳定性和属性方面都有拨云见日的优势
D 合并安全权限框架shiro
  Shiro 是四个用 Java
语言完成的框架,通过五个简便易用的 API
提供身份验证和授权,更安全,更保证
E 集成ehcache分布式缓存
  是二个纯Java的长尼科西亚缓存框架,具有便捷、精干等特征,广泛接纳的开源Java分布式缓存。
F **集成微信接口开发,微信自定义菜单(援救七个公众号)
G 图表爬虫技术:输入有图片的网址,能把此网页的图纸爬取并下载到本地服务器
H SQL 编辑器,
援助复杂sql语句(写入语句,查询语句),生成报表,能够导出excel

I  websocket 真正及时通讯技术
  即时推推搡搡、及时站内信并声音提示、实时在线管理、websocket及时刷新页面(完胜ajax技术)
J  redis 工具类接口,方便调用,并发能力强
K 多数据源(补助同时连接众两个数据库,能够差异的模块连接区别数的据库)帮助N个数据源
L  快递单号物流查询接口(不供给选用物流公司,依据单号自动识别)
M 调用录制头拍照,自定义裁剪编辑头像,头像图片色度调节
N  **摄像播放技术,录制弹幕技术,多人即时通讯弹幕聊天**

Linux内核——标准库——Framework层——应用层

1
 权限管理:点开二级菜单进入三级菜单呈现角色(基础权限)和按钮权限
    
 剧中人物(基础权限):
分剧中人物组和角色,独立分配菜单权限和增加和删除改查权限。
      按钮权限:
给剧中人物分配按钮权限。
2
 按钮管理:自定义按钮管理,维护按钮权限标识等
3
 菜单管理:无限级别自定义菜单,自定义菜单图标,业务菜单和种类菜单分离,菜单状态展现隐藏(递归处理)
4
 数据字典:无限级别,接济多级别无限分类。内设编号,排序等
5
 日志管理:记录用户登录退出和有个别重中之重操作记录
6
 在线管理:websocket技术,实时检测在线用户列表,总结在线人数,可强制用户下线
同一用户只可以在二个客户端登录
7
 系统用户:对一一基本的用户增加和删除改查,单发、群发站内信邮件短信,导入导出excel表格,批量刨除
8
 会员管理:对前台用户管理,分配会员级别,到期时间,状态,联系消息等资料
9.   代码生成:生成完整的模块代码,并保留生成记录模版,可复用
(超强悍开发利器)
       
 正向生成:  生成完全的模块,页面、处理类、service层、myabaits的xml
建表的sql脚本等
       
 反向变化:  任意连接其余数据库(mysql、oracle、sqlserver),根据表反射生开支系统的模块
10.
质量监察和控制:监察和控制全部系统的个性,SQL监察和控制,SQL防火墙,URAV4L监察和控制,SP汉兰达ING监察和控制,SESSION监察和控制等
11. 接口测试:POST or GET
格局检查和测试种类接口,参数加密,json再次来到结果,总括服务器响应时间
12. 发送邮件:单发,群发邮件  
13.
置二维码:生成二维码图表保存到服务器 or  解析读取二维码内新闻
14.
图表报表:柱状图、饼状图、折线图、各个图片大全
15. 地图工具:打开地图,
鼠标点击地图某地方获取经纬度坐标,依照经纬度计算两点距离
16. 打字与印刷测试:页面打字与印刷预览测试
17.
图片管理:对批量上传的图样统管,点击放大,可打开八个,自由切换,绚丽预览效果
18.
图片爬虫:输入某网址,爬出其图片体未来页面上,能够放手预览。可保留到服务器上,到图片管理个中
19. 站内信:收信箱和发邮箱,
websocket技术通信技术做的立即收信提醒,可配置语音提醒来信
20. 下拉联合浮动:四级下拉联合浮动demo
21.
系统装置:修改系统名称,邮件服务器配置,短信账号设置,图片水印配置,微信配置
22.
及时聊天:打开聊天窗口,可群聊、一对一聊天
23.
表单营造:拖拽式飞速自定义创设表单,组建成分丰硕,有富文本、上传控件、下拉框等等
24.
主附结构:提供3个主表和明细表模块的例子(用本代码生成器生成的)
25.
协会机构:无限级别,公司or部门管理
26.
职员和工人管理:和团伙机关部门管理,能够绑定登录连串用户,授权数据权限
27.
文件管理:上传文件,修改删除文件,总括文件大小
28.
快递查询:输入快递单号,查询物流跟踪音讯。不需求选取物流公司,依照单号自动识别
  ————————————————————————————————————————-数据库管理
29. 数据库备份:可备份单表、整库,支持本地和远程数据库备份(java界面编制程序技术,socket编制程序技术)
30.
备份定时器:quartz 2.2
强大的职分调度,八线程备份数据库,职责运转关闭异步操作
31. 数据库还原:历史备份记录,还原数据库 or 单表
,计算备份时间和文件大小
32.

Linux层包蕴:Android系统的为主服务,硬件驱动,进程管理,系统安全等等

SQL编辑器:强大的SQL编辑器,协理理编辑辑语句复杂查询语句,生成动态报表,可导出excel

 官网 http://www.fhadmin.org/

食谱权限:分配给每一个剧中人物分裂的菜谱权限,
每一个剧中人物看到的菜单分裂,无限级别菜单
按钮权限:独立分配不相同的角色差别的法力权限,增加和删除改查权限分配具体到不一致的菜系,自定义按钮管理
匡助多用户分权限管理后台,  权限具体到区别的菜系分歧的按钮(
三个用户能够七个角色**)

快讯管理:新闻的保险、发布、权重排序等
采纳百度ueditor富文本框
布告管理:布告的掩护、公布
广告管理:广告的保险、发表,状态维护,上传广告图片
友情链接:友情链接的爱戴、状态维护
专门推荐:尤其推荐、状态维护

**

技术点

**1. 导出 导入 excel
文件

2  导出word文件
3. IO
流上传下载文件

4.
群发邮件,能够发html、纯文本格式,能够发给任意邮箱(达成批量出殡和埋葬广告邮件)

5. 群发or单独
发送短信,协助二种第壹方短信商接口

6. spring 
 aop  事务处理

7. 代码生成器 (freemarker), 代码 zip
压缩打包

8. MD5加密
SHA加密(登录密码用此加密)接口加密身价校验

9. 数据库连接池  Ali的
druid。Druid在督察、可扩展性、稳定性和质量方面都有举世知名的优势,帮忙并发

10.参与安全框架 shiro
(登录授权)(session管理)

11.基于汉字
解析汉字的全拼(拼音)和首字母(导入excel到用户表,依据用户的汉字姓名生成拼音的用户名)

12.app接口@ResponseBody(协助与任何语言数据交互)
13.极光推送
(推送给APP及时音信,APP不运行也能接到)

14.微信接口(身份验证,文本、图像和文字回复等)
微信远程序控制克制务注重启、锁定、其它应用程序

15.java Quartz2.2 任务调度

16.java websocket
即时通信技术,点对点,群聊,单聊

17.Lucene**全文字笔迹检验索(在捐献赠送的项目中) 18.Base64传输图片 19.图纸加水印(图片水印,文字水印) 20.生成 or  解析
二维码 21.HTML5 + JAVAEE  WebSocket
通信技术,**WebSocket
验证用户登录,强制某用户下线

22.批量异步上传图片,可预览,有进程条,帮忙拖拽上传(百度webuploader
)。列表动态滑动放大展现。

23.ehcache 自定义二级缓存
,接纳缓存存放目录,处理并发,增添系统个性

24.服务器内部GET POST
请求

25.uploadify
上传插件,单条、批量上传四线程,带进程条,异步,图片、录制,
其它文件格式均可上传

26.地图选点获取经纬度坐标,依照俩经纬度总括距离
27.tab标签页面效果,标签自由切换,不重复操作数据库
28.站内信语音提醒,js控制音频播放
29.百度富文本编辑器,可上传图片
30.网页爬虫技术,可依据网页地址爬取图片和网页标题等消息(爬取某商城图片保存本服务器)
31.redis
技术

32.多数据源技术
33.springmvc
下拉多级联合浮动技术

34.调用录像头拍照技术,图片裁剪技术
35.快递接口查询技术,输入快递单号查询物流音信
36.在线编辑器,仿开发工具
37.pdf文本在线预览,在线预览文本文件,转码预览
38.摄像播放技术,几人在线弹幕聊天

图片 2**

 

图片 3

图片 4

图片 5

图片 6

图片 7

图片 8

图片 9

图片 10

图片 11

图片 12

图片 13

图片 14

图片 15

图片 16

图片 17

图片 18

 

图片 19

图片 20

图片 21

 

图片 22

 

(未来又加了一层变成了:Linux内核——硬件抽象层——标准库——Framework层——应用层)

 

二 、UI界面框架图:

图片 23

三 、View的衡量情势:EXACTLY,AT_MOST,UNSPECIFIED。

④ 、自定义View与ViewGroup的时候理应注意什么?

自定义ViewGroup的时候理应专爱抚写onLayout来支配子类展现的地方。

万一急需支持wrap_content还要重写onMeasure()。

自定义View的时候,假诺急需帮衬wrap_content,须要重写onMeasure().

5、自定义view的种类:

(1)、对已某个组件实行拓展

(2)、通过整合来落到实处新的控件

(3)、重写View来贯彻全新的控件

 

 ⑥ 、完毕滑动的章程:

(1)、通过layout方法。

(2)、通过LayoutParam来改变二个view的职责(必须有一个父布局才能够获取到零部件的LayoutParam)。

(3)、scrollTo,scrollBy方法。(移动的是组件里面包车型地铁剧情,dx和dy倘诺是负数的话,那么内容往正方向移动,正数则往负方向移动)。

(4)、Scroller。

(5)、属性动画。

(6)、ViewDragHelper

(7)、offsetLeftAndRight()同时对左和右举办偏移。

             offsetTopAndBottom()同时对上和下展开偏移。

柒 、独立像素dp与px的折算:

android系统运用mdpi即密度值为160的显示器作为规范,在那一个显示屏上,1px=1pd,种种分辨率直接的折算比例为:

ldpi:mdpi:hdpi:xhdip:xxhdpi=3:4:6:8:12

 

8、SurfaceView与View的区别:

(1)、View首要用来主动革新的情形,而SurfaceView主要用以被动更新的情事,例如频仍地刷新。

(2)、View是在主线程中举行刷新的,而SurfaceView是通过2个子线程来刷新页面包车型大巴。

(3)、View在绘图的时候没有运用双缓冲机制,而SurfaceView在底层完结机制中就已经落成了双缓冲机制。

玖 、android的平安机制:

(1)、第1道防线:代码安全部制——代码混淆proguard。

(2)、第贰道防线:应用接入权限控制——AndroidMainifest文件权限申明、权限检查体制。

(3)、第贰道防线:应用签名机制——数字证书(Android系统不会设置没有签署的APP)。

(4)、第4道防线:Linux内核层安全体制——Uid访问权限控制

(5)、第伍道防线:Android虚拟机沙箱机制——沙箱隔绝

 

⑩ 、质量优化相关的工具:

(1)、Android Link:有助于发现代码中隐藏的有的难题,比如布局嵌套太多等等。

(2)、Memory monitor:这几个是android studio自带的内部存款和储蓄器监视工具,它能够很好地扶持我们开始展览内存实时分析。

(3)、TraceView:优化APP性能。

(4)、MAT工具分析APP内部存款和储蓄器状态。

 

11、Serializable与Parcelable的区别:

Serializable是java中的种类化接口,使用简便,不过付出大,类别化与反连串化进度要求大量的I/O操作。

Parcelable是android中的类别化方式,越发适用于Android平台上,可是使用起来有点麻烦一点,但是功效高,那是android推荐的体系化格局,由此大家要首要选拔Parcelable。

Parcelable重要用于内部存款和储蓄器种类化上,通过将目的连串化到存储设备中,或许讲对象种类化后经过互联网传输也是足以的,可是经过相比复杂,因而那二种状态下将已运用Serializable。

 

1② 、多进度会招致什么难点:

(1)、静态成员与单例方式完全失效。

(2)、同步机制完全失效。

(3)、SharedPrefrences可相信性降低

(4)、Application数十次创设

 

1③ 、IPC的不二法门有哪些,不相同是何等:

名称 优点 缺点 适用场景
Bundle 简单易用 只能够传输Bundle支持的数据 四大组件之间的进程间通讯
文件共享 简单易用 不适合高并发场景,并且无法做到进程间的即时通信 无并发访问情形,简单交换的数据实时性不高的场景
AIDL 功能强大,支持一对多并发通信 使用稍微复杂,需要处理好线程同步 一对多通信且有RPC需求
Messenger

功能一般,支持一对多串行通信

支持实时通信

不能很高的处理高并发情形,不支持RPC,数据通过

Messenger进行传输,因此只能够传输Bundle支持

的数据类型

低并发的一对多即时通信,无RPC需求,或者无需返

回结果的RPC需求

ContentProvider

在数据源访问方面功能强大,支持一对多

并发数据共享,可通过Call方法拓展其他

操作

可以理解为受约束的AIDL,主要是提供数据源的

CRUD操作

一对多的进程间数据共享
Socket

功能强大,可以通过网络传输字节流,支

持一对多并发实时通信

实现细节稍微有点繁琐,不支持直接的RPC 网络数据交换

1④ 、线程的几种境况:

(1)、新建:新成立了多少个线程对象。

(2)、就绪:线程对象创造后,其余线程(比如 main 线程)调用了该指标的 start ()方法。这一场合包车型客车线程位于可运行线程池中,等待被线程调度选中,获
取 cpu 的使用权 。

(3)、运维:可运行状态( runnable )的线程获得了 cpu 时间片( timeslice ) ,执行程序代码。

(4)、阻塞:

阻塞状态是指线程因为某种原因舍弃了 cpu 使用权,也即让出了 cpu
timeslice ,暂且告一段落运作。直到线程进入可运转( runnable )状态,才有
机会再次获得 cpu timeslice 转到运转( running )状态。阻塞的图景分二种:

(一). 等待绿灯:运转( running )的线程执行 o . wait ()方法, JVM 会把该线程放
入等待队列( waitting queue )中。

(二). 同步阻塞:运转( running )的线程在赢得对象的一路锁时,若该联合锁
被别的线程占用,则 JVM 会把该线程放入锁池( lock pool )中。

(三). 其余阻塞:
运转( running )的线程执行 Thread . sleep ( long ms )或 t . join ()方法,也许产生了 I / O 请求时, JVM 会把该线程置为阻塞状态。            当 sleep ()状态超时、 join ()等待线程终止只怕逾期、大概 I / O 处理完结时,线程重新转入可运营( runnable )状态。

(5)、谢世:线程 run ()、 main () 方法执行完结,或然因不胜退出了 run ()方法,则该线程截止生命周期。归西的线程不可再度复生。

Post Author: admin

发表评论

电子邮件地址不会被公开。 必填项已用*标注