[杂谈]杂谈章1 问几个JAVA问题

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

1.面向对象、面向过程 区别

2.Java 如何实现的平台无关

和C/C++不同的是,Java语言提供的编译器不针对特定的操作系统和CPU芯片进行编程,而是针对Java虚拟机把Java源程序编译成称为字节码的“中间代码”,然后Java虚拟机负责将字节码翻译成虚拟机所在平台的机器码,并让当前平台运行该机器码。
Java语言的运行原理:
在一个计算机上编译得到的字节码文件(就是.class文件),可以复制到任何一个安装了Java运行环境的计算机上直接运行。然后字节码文件由虚拟机负责解释执行,即Java虚拟机将字节码翻译成本地计算机的机器码,然后将机器码交给本地的操作系统运行。
由于在一个计算机上编译得到的字节码文件可以复制到任何一个安装了Java运行环境的计算机上直接使用,所以字节码其实是一种“中间代码”,这也就是为什么“Java语言能够一次编译,处处运行,也就是Java跨平台的原因。”所以称Java是一种“半编译,半解释的语言”,即源程序——>编译——>字节码——>字节码解释程序——>对应平台的机器语言。

3.值传递、引用传递

4.什么是序列化与反序列化、为什么序列化

5.死锁、死锁如何排查、如何确保线程安全

6.有哪些虚拟机性能监控与故障处理工具;(ps, jstack, jmap, jstat, jconsole, jinfo, jhat, javap, btrace, TProfiler)

7.了解 23 种设计模式

创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。

结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。

行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter 模式)、状态模式、策略模式、职责链模式(责任链模式)、访问者模式。

→ 会使用常用设计模式
单例的七种写法:懒汉——线程不安全、懒汉——线程安全、饿汉、饿汉——变种、静态内部类、枚举、双重校验锁

8.filter 和 listener

web.xml 中常用配置及作用

9.线上问题分析

→ dump 获取

线程 Dump、内存 Dump、gc 情况

→ dump 分析
分析死锁、分析内存泄露

→ dump 分析及获取工具
jstack、jstat、jmap、jhat、Arthas

10.常见问题解决思路

内存溢出、线程死锁、类加载冲突

→ 使用工具尝试解决以下问题,并写下总结
当一个 Java 程序响应很慢时如何查找问题

当一个 Java 程序频繁 FullGC 时如何解决问题

如何查看垃圾回收日志

当一个 Java 应用发生 OutOfMemory 时该如何解决

如何判断是否出现死锁

如何判断是否存在内存泄露

11.Java 的反编译工具

12.排序算法

13. 海量数据处理

14.大数据知识

15.网络安全知识

16. 注入攻击
SQL 注入、XML 注入、CRLF 注入

17.加密与解密

对称加密、非对称加密、哈希算法、加盐哈希算法

MD5,SHA1、DES、AES、RSA、DSA

18.分布式

数据一致性、服务治理、服务降级

19.算法
共识算法、Raft 协议、Paxos 算法与 Raft 算法、

20.微服务

→ Docker & Kubernets
→ Spring Boot
→ Spring Cloud

21.高并发

→ 分库分表
→ CDN 技术
→ 消息队列

22.监控

→ 监控什么

CPU、内存、磁盘 I/O、网络 I/O 等

监控手段
进程监控、语义监控、机器资源监控、数据波动

→ 监控数据采集
日志、埋点

23.搜索引擎

Solr、Lucene、Nutch、Elasticsearch

24.区块链

哈希算法、Merkle 树、公钥密码算法、共识算法、

Raft 协议、Paxos 算法与 Raft 算法、拜占庭问题与算法、消息认证码与数字签名

25.人工智能

数学基础、机器学习、人工神经网络、深度学习、应用场景。

→ 常用框架
TensorFlow、DeepLearning4J

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Java

“[杂谈]杂谈章1 问几个JAVA问题” 的相关文章

接口幂等性的几种简单解决方案-CSDN博客

1、接口幂等性是什么 接口幂等性并不是数学中的幂等,而是对于用户来说不论网络波动或者刷新页面后重新操作某个动作等,最终导致对同一接口产生多次请求, 但是对于用户而言并没有产生影响。也就是说重复多次操作的结果 = 一次操作的结果。 2、有哪些常见的...

Java中两个字符串进行大小比较

一:大小比较:使用 String.compareTo 方法 compareTo() 的返回值是int, 它是先比较对应字符的大小(ASCII码顺序) 1、如果字符串相等返回值0 2、如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(asc...

使用PHP实现的功能有哪些 - 编程语言

本篇内容介绍了“使用PHP实现的功能有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 一、用户认证和授权一个网站需要安全地管理用户信息。...

求 余

> (remainder 21 3) 0 > (remainder 21 2) 1最大公约数> (define (gcd a b) (if (= b 0) a (gcd b (remaind...

sync,shutdown,usr

sync:同步数据,将内存中的数据刷新到硬盘上,相当于refresh shutdown +10:系统就会10分钟后关机 文件名以.开关是的隐藏文件 usr:UNIX Software Resource...

centos下安装fcitx输入法

在ubuntu下用起来很不错 一、提前解决 Fcitx 的依赖问题 Fcitx,依赖于:gettext, gettext-devel, libXft, libXft-devel, libXpm和libXpm-devel,这六个软件包和一些编译工具与库。 可以...