Java基础技术基础面试【笔记】】的更多相关文章

Java基础技术JVM面试[笔记] JVM JVM 对 java 类的使用总体上可以分为两部分:一是把静态的 class 文件加载到 JVM 内存,二是在 JVM 内存中进行 Java 类的生命周期管理 JVM 内存结构是什么样的? JVM 内存的主要分为五个区: 方法区(Method Area) 虚拟机栈(VM Stack) 本地方法栈(Native method stack) 堆(Heap) 程序计数器(Program Counter Register) 堆(Heap) 堆会在虚拟机启动时进…
java基础技术集合面试[笔记] Hashmap: 基于哈希表的 Map 接口的实现,此实现提供所有可选的映射操作,并允许使用 null 值和 null 键(除了不同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同.)此类不保证映射的顺序,特别是它不保证该顺序恒久不变 另外,HashMap是非线程安全的,也就是说在多线程的环境下,可能会存在问题,而Hashtable是线程安全的 HashMap 内部的数据结构? 各个版本的实现略有不同 JDK1.7 及以前的 Ha…
Java基础技术基础面试[笔记] String.StringBuilder以及StringBuffer三者之间的区别? 三者的区别可以从可变性,线程安全性,性能这三个部分进行说明 可变性 从可变性来说,String不可变,StringBuilder与StringBuffer可变 因为在String类中,是使用只读字符数组保存字符串的,所以String是不可变的 而StringBuilder与StringBuffer,两者都继承自AbstractStringBuilder类,而在AbstractS…
最近在复习面试相关的知识点,然后做笔记,后期(大概在2018.02.01)会分享给大家,尽自己最大的努力做到最好,还希望到时候大家能给予建议和补充 ----------------2018.03.05------------------- 原本说好的2月份写出,但是因为知识点太多,就跳票了.... ----------------2018.04.03------------------- 今天终于有时间来整理这些笔记,然后将他们整理分类分成几个不同的模块,这样大家看起来也更方便些,以后会慢慢来完…
Java横向技术 网络[笔记] 计算机网络 服务器返回给客户端 http 响应包的状态码有哪几大类?302.304 分别是什么意思? ​ 状态码分为五大类: ​(1)信息性状态码(Informational),表示请求已被接受,需要继续处理.码值范围:1xx ​(2)成功状态码(Success),表示请求已成功被服务器接收.理解.并接受.码值范围:2xx (3)重定向状态码 (Redirection) ,表示需要客户端采取进一步的操作才能完成请求.码值范围:3xx ​(4) 客户端错误状态码 (…
public class Demo1 extends JFrame{ MyPanel mp=null; public static void main(String[] args){ Demo1 demo=new Demo1(); } public Demo1(){ mp=new MyPanel(); this.add(mp); this.setSize(400,300); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.set…
java网络编译: 基础知识:①.ip地址和端口号:ip地址是用来识别网络中的一个实体,而这个实体可以理解为一个主机,而端口号则是用来区分具体的通讯程序的.②.tcp / udp协议:tcp是一个可靠数据传输:http和ftp都是采用的它:而udp是一个无连接的协议.如qq聊天.③.URL:统一资源定位器,指向了互联网的一个资源,下面看一下通过URL来获取数据示例: ④.InetAddress:这个是java中代表IP地址的类. socket:①.创建socket实例:②.客户端连接:     …
分布式架构的演进 系统架构演化历程-初始阶段架构…
分布式架构的演进 系统架构演化历程-初始阶段架构初始阶段 的小型系统 应用程序.数据库.文件等所有的资源都在一台服务器上通俗称为LAMP特征:应用程序.数据库.文件等所有的资源都在一台服务器上.描述:通常服务器操作系统使用Linux,应用程序使用PHP开发,然后部署在Apache上,数据库使用MYSQL,汇集各种免费开源软件以及一台廉价服务器就可以开始系统的发展之路了. 系统架构演化历程-应用服务和数据服务分离好景不长,发现随着系统访问量的再度增加,webserver机器的压力在高峰期会上升到比…
Java基础技术多线程与并发 什么是线程死锁? ​死锁是指两个或两个以上的进程(线程)在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去,我们就可以称此时的系统处于死锁状态,即系统产生了死锁 死锁产生的条件是什么? 死锁产生的条件可以分成四个,且这四个都必须同时存在才能形成死锁 ​(1) 互斥条件:该资源任意一个时刻只由一个线程占用 (2) 请求与保持条件:一个线程以及进程因请求资源而阻塞时,对已获得的资源保持不放 (3) 不剥夺条件:线程以及进…
Java基础技术-Java其他主题[面试] Java基础技术IO与队列 Java BIO.NIO.AIO Java 中 BIO.NIO.AIO 的区别是什么? 含义不同: BIO(Blocking IO)是同步并阻塞的 IO,线程发起 IO 请求后,不论内核是否准备好 IO 操作,都会一直阻塞直到操作完成 NIO(Non-blocking IO)是同步非阻塞的 IO,线程发起 IO 请求后立即返回:内核在做好 IO 操作的准备之后,通过调用注册的回调函数通知线程做 IO 操作,线程开始阻塞,直到…
文件基础技术 一.文件概述 一)基本概念 1.文件的分类: 1)文本文件:文件中每个二进制字节都是某个可打印字符的一部分.如.java文件 2)二进制文件:文件中每个二进制字节不一定用来表示字符,也可表示颜色.字体.声音. 2.文件的元数据信息:如文件名.创建时间.修改时间.文件大小等. 3.文件名的大小写敏感问题:Windows系统文件名不大小写敏感,Linux系统中是大小写敏感的 4.文件的读写: 1)文件是放在硬盘中的,程序处理文件需要将文件读入内存,修改后,写回硬盘. 2)基本常识1:…
最近收到一位粉丝的回馈! 这位粉丝已经成功入职阿里了小编很是羡慕啊! 今天就把这份30w字Java面试笔记给大家分享出来,说来也巧这份资料也是由一位阿里技术官整理出来的这算不算是"搬起石头砸自己的脚呢"哈哈! Java面试笔记 这份资料的内容非常全面而且细致入微,有Java入门,基础,字符串,进阶,项目,虚拟机,数据库,微服务,算法,并发,线程,集合,Linux,面试题等等Java相关技术点,希望你能凭借这份资料剑指offer! 内容总览: Java基础篇(45道面试题) 字符串&am…
Java后端高频知识点学习笔记1---Java基础 参考地址:牛_客_网 https://www.nowcoder.com/discuss/819297 1.重载和重写的区别 重载:同一类中多个同名方法根据不同的传参来执行不同的处理逻辑:方法名必须相同,参数类型不同.个数不同.顺序不同:返回值类型可以相同也可以不同(因为返回值类型不是方法签名的一部分) 重写:子类对父类的方法的实现过程进行重新编写.方法名,参数列表和返回值类型都不能改变.抛出的异常范围小于等于父类,访问修饰符范围大于等于父类.…
前言 Java内省技术属于Java基础体系的的一部分,但是很多人都不甚了解.笔者也是在学习Spring源码的过程中遇到该技术模块的.为了完善技术体系,本文将全面的学习该技术.在提到Java内省技术,就不得不说Java的反射和JavaBeans技术,相信这两点大家应该都非常熟悉.本文将会从以下几个方面学习Java内省: Java内省和JavaBeans技术 Java内省和反射技术的关系 Java内省的API介绍 Java内省实战 Java内省和JavaBeans技术 在JavaBeans 101的…
本文篇幅较长,建议合理利用右上角目录进行查看(如果没有目录请刷新). 一.Java的历史与演变 目的:为完全了解Java,需要理解Java的诞生原因.成型动力以及他继承的思想. 计算机语言的创新与发展的原因:适应环境和用途的变化:实现编程艺术的完善和提高. 1.1.Java的家世 Java大量特性从C和C++继承过来. C语言的诞生 C语言前,BASIC.COBOL.FORTRAN这几种编程语言没有遵循结构化原则设计,依赖GOTO作为程序控制手段:Pascal虽是结构化语言,但不是针对高效率设计…
本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而函数相关的考点,往往是大家容易忽视的一个点,今天冷月就来帮各位小伙伴们梳理一下,在面试中函数相关的注意点. 回顾真题 <?php /** * Created by 冷月小白. * 微信公众号: 学长冷月 */ $count = 5; function get_count() { static $count; re…
本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而运算符相关的考点,往往是大家容易忽视的一个点,今天冷月就来帮各位小伙伴们梳理一下,在面试中运算符相关的注意点. 回顾真题 abc()和@abc()之间的区别. 答案:PHP 支持一个错误控制运算符:@.当将其放置在一个 PHP 表达式之前,该表达式可能产生的任何错误信息都被忽略掉.使用方法如下: <?php /*…
本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 面试是每一个PHP初学者到PHP程序员必不可少的一步,冷月将为大家对PHP基础知识:JS.JQuery.AJAX:Linux:MySQL:程序设计题:PHP框架:算法.逻辑思维:高并发解决方案等做一个全方位的解析. 回顾真题 PHP中字符串可以使用哪三种定义方式以及各自的区别是什么? 答案: 单引号 双引号 heredoc()和newdoc() 先来看看…
今天本人给大家讲解一下Java的反射基础技术,如有不对的或者讲的不好的可以多多提出,我会进行相应的更改,先提前感谢提出意见的各位了!!! 什么是反射? 反射它是根据字节码文件可以反射出类的信息.字段.方法.构造方法等内容,还可以创建对象调用方法,我们称它为反射技术. 如何通过反射获取Class对象了? 它有三种方法,1.通过Class获取类对象 2.通过getClass()方法获取类对象 3.通过Class.forName(“完整类名”)获取类对象 案例:通过反射获得Class对象的3种方法 C…
第1章:C++泛型技术基础:模板 1.2 关于模板参数 1.2.1 模板参数类型 类型参数   typename声明的参数都属于类型参数,它的实参必须为系统内置或者用户自定义的数据类型,包括类模板实体,由类模板产生的类模板实体,本质上就是类. 非类型参数   C++允许人们在模板参数列表中像函数参数列表中那样定义普通变量或者对象.定义的普通变量不能被修改,因为模板参数是在预编译期间进行传递并且被编译的.仅支持可以转换为Int类型的变量(double都不行!).枚举.指针.引用. template…
本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而流程控制相关的考点,往往是大家容易忽视的一个点,今天冷月就来帮各位小伙伴们梳理一下,在面试中流程控制相关的注意点. 回顾真题 请列出3种php数组循环操作的语法,并注明各种循环的区别 答案: for foreach while.list().each() for() for循环是常见的循环结构,但是只能遍历索引数…
本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而文件及目录处理相关的考点,往往是大家容易忽视的一个点,今天冷月就来帮各位小伙伴们梳理一下,在面试中文件及目录处理相关的注意点. 回顾真题 不断在文件hello.txt头部写入一行"Hello world"字符串,要求代码完整 答案: <?php /** * Created by 冷月小白. * 微…
本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而正则表达式相关的考点,往往是大家容易忽视的一个点,今天冷月就来帮各位小伙伴们梳理一下,在面试中正则表达式相关的注意点. 回顾真题 至少写出一种验证139开头的11位手机号码的正则表达式 答案: /^139\d{8}$/ 考点分析 很明显,面试官主要想考察大家对于正则表达式组成及编写方法的了解程度.继而衍生出正则表…
分布式Java应用的体系结构知识简单分为: 网络通信:包括协议和IO 消息方式的系统间通信:包括基于Java包.基于开源框架.性能角度 远程调用方式的系统间通信:包括基于Java包.基于开源框架.性能角度 大型应用拆分为多个子系统来实现,这些子系统可能部署在同一台机器,或者不同机器的多个不同JVM中,每个子系统对应一个JVM.但这些子系统又不是完全独立的,要相互通信来共同实现业务功能,对于此类Java引用,我们称之为分布式Java引用.通常有两种典型的方法来实现. 基于信息方式实现系统间的通信,…
远程调用方式就是尽可能地使系统间的通信和系统内一样,让使用者感觉调用远程同调用本地一样,但其实没没有办法做到完全透明,例如由于远程调用带来的网络问题.超时问题.序列化/反序列化问题.调式复杂的问题等.基于Java自身技术在Java中实现远程调用方式的技术主要有RMI和WeService两种.RMIRMI(Remote Method Invocation)是Java用于实现透明远程调用的重要机制.在远处调用中,客户端仅有服务端提供的接口,通过此接口实现对远程服务器端的调用.远程调用基于网络通信来实…
目录: 线程间的通信示例 等待唤醒机制 等待唤醒机制的优化 线程间通信经典问题:多生产者多消费者问题 多生产多消费问题的解决 JDK1.5之后的新加锁方式 多生产多消费问题的新解决办法 sleep和wait的区别 停止线程的方式 守护线程 线程的其他知识点 一.线程间的通信示例 返目录回 多个线程在处理同一资源,任务却不同. 假设有一堆货物,有一辆车把这批货物往仓库里面运,另外一辆车把前一辆车运进仓库的货物往外面运.这里货物就是同一资源,但是两辆车的任务却不同,一个是往里运,一个是往外运. 下面…
Java面向对象编程基础 面向对象(Object oriented programming,OOP)技术是一种强有力的软件开发方法,它採用数据抽象与信息隐藏技术,来使软件开发简单化,以达到代码重用的目的. 1.OOP的3个特性(封装.继承和多态性) 封装是类的基础.指把类的相关实现细节隐藏起来,在类中将数据和实现操作的代码集中起来放在对象的内部.调用这些类时仅仅需直接使用类预留的接口就能够了. 继承提供了子类自己主动拥有父类数据结构和方法的机制.它表示类之间的一种关系. 多态指使一个对象被看成还…
------------恢复内容开始------------ Java笔记 ​ 一直以来,总想着Java会点基础就可以写后端程序了,但越到后来越发现Java基础的重要性.更不必说在面试时,Java基础有多么的重要.为了防止学了就忘,还是决定花点时间边查资料边整理成笔记. ​ 才疏学浅,若有错误,望大力斧正. 一.Demo与运行 1.选择合适的IDE 首选eclipse和IDEA,社区版不推荐用,但企业版要¥,不过有破解方法和申请免费的方法. 在接触Spring后,愈发爱上了IDEA. 2.环境变…
Java横向技术 spring框架[笔记] Spring 的两大特性是什么? AOP(Aspect Oriented Programming,面向切面编程)与 IOC(Inverse of Control,控制反转) AOP 的原理以及实现方式: Spring AOP 的底层使用的是动态代理,有两种实现方式: JDK 动态代理:利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用 InvokeHandler 来处理 CGlib 动态代理:以 CGLIB(Code Generation…