JAVA面试题1-1

本文探讨了Java面向对象的继承、多态和封装三大特性,并深入解析了ArrayList与LinkedList在并发环境下的优劣。同时,梳理了高并发中集合问题的演进和Java 8新增特性,如接口默认方法、lambda表达式和Stream。最后,比较了抽象类与接口,以及Spring Cloud核心组件及其作用。

JAVA面向对象都有哪些特征?

继承:复用的概念
多态:多态是父亲生产儿子,但是是儿子在使用
封装:也是增加了复用性

ArrayList 和 LinkedList的区别

ArrayList 是基于数组来底层实现的。可以O(1)的时间随机访问
LinkedList插入,添加,删除操作速度更快,不需要像数组那样重新计算大小或者更新索引。

高并发中的集合有哪些问题?

第一代:高并发

Vector hashtable 一开始为了保证线程安全:使用synchronized修饰方法
缺点:效率低下

第二代:线程非安全集合类

ArrayList 、HashMap
线程不安全,但是性能好,用来代替vector和hashtable
需要线程安全的时候:Collections.synchronizedList(list) 、Collections.synchronizedMap(m);

底层使用synchronized代码块锁

第三代:线程安全集合类

在大量并发情况下如何提高集合效率和安全呢?
java.util.concurrent.*

JDK1.8的新特性有哪些?

1、接口的默认方法 也是为了适配lambda表达式
Java 8 允许我们给接口添加一个非抽象的方法实现,只需要default关键字就可以,这种特性又叫做扩展方法。

2、lambda 表达式,简化了函数式编程
例如Collections.sort(names,(a,b)->b.compareTo(a));

3、stream接口

java.util.Stream 表示能应用在一组元素上一次执行的操作序列。Stream操作分为中间操作或者最终操作两种,最终操作返回一特定类型的计算结果。而中间操作返回stream本身,这样你就可以将多个操作依次串起来。

Stream的创建需要指定一个数据源,比如java.util.Collection类

4、Annotation注解
java8支持多重注解,首先定义一个包装类Hints注解用来放置一组具体的Hint注解:
代码如下:
@interface Hints{Hint[] value();}
@Repeatable(Hints.class) @interface Hint{String value();}
Java 8 允许我们把同一个类型的注解使用多次,只需要给该注解标注一下@Repeatable即可

老方法

@Hints({ @Hint(“hint1”), @ Hint(“hint2”)}) class Person{}

使用多重注解

@Hint(hint1) @Hint(hint2) class PersonI{}

抽象类和接口有什么区别

能够想象到的抽象概念使用抽象类:食物,动物,植物,人类
接口描述的是特征:flyable 可以飞,可以游泳,可以跑,可以跳

spring cloud 核心组件有哪些?分别有哪些作用

服务注册与发现–Netflix Eureka、Nacos、Zookeeper
客户端负载均衡–Netfilx Ribbon、SpringCloud LoadBalancer
服务熔断器–Netfilx Hystrix、Alibaba Sentinel 、Resilence4J
服务网关–Netfilx zuul、SpringCloud Gateway
服务接口调用–Netflix Feign、Resttemplate、Openfeign
链路追踪–Netflix Sleuth、Skywalking。 Pinpoint
聚合Hystrix监控数据–Netflix Turbine
监控中心—SpringBoot Admin
配置中心—Spring Cloud Config、Apollo、nacos

微服务架构原理是什么?

主要是面向SOA理念,更小粒度服务的拆分,将功能分解到各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值