当前位置: 首页 > news >正文

深圳网站建设大公司排行榜百度

深圳网站建设大公司,排行榜百度,网站建设管理员工工资多少钱,网站建设福州最好泛型 什么是泛型?有什么用? 泛型是jdk5引入的新特性,通过泛型可以提高代码的可读性和稳定性;当我们使用泛型时,传入的对象类型必须是指定的泛型类型,否则就会报错 泛型的使用方式有哪些? 一…

泛型

  1. 什么是泛型?有什么用?

泛型是jdk5引入的新特性,通过泛型可以提高代码的可读性和稳定性;当我们使用泛型时,传入的对象类型必须是指定的泛型类型,否则就会报错

  1. 泛型的使用方式有哪些?

一是泛型类
二是泛型接口
三是泛型方法
泛型类,一般在实例化的时候需要指定泛型的类型

public class Person<T>{private String name ;public Person<T>{}
}
实例化
Person<ming> person = new Person<ming>

泛型接口,

public interface Generator<T> {public T method();
}
// 实现接口,指定泛型类型
class GeneratorImpl<T> implements Generator<String>{@Overridepublic String method() {return "hello";}
}// 实现接口,不指定泛型类型
class GeneratorImpl<T> implements Generator<T>{@Overridepublic T method() {return "hello";}
}
泛型方法
   public static < E > void printArray( E[] inputArray ){for ( E element : inputArray ){System.out.printf( "%s ", element );}System.out.println();}

在泛型方法中,泛型只是一个占位符,使用了泛型的方法是一个静态方法,表示我们使用这个方法可以是任意类型的数组
作为一个静态的方法,由于静态方法是先于类加载的,所有对于泛型方法,是不能使用泛型类指定的类型的,只能使用自己声明的泛型

  1. 项目中哪里用到泛型?

一是自定义的通用接口返回类,使用泛型可以做到返回结果的统一化
二是定义Excel处理类,用于动态的导出数据类型
三是构建集合处理类(比如Collections 中的 sort, binarySearch 方法)

反射

  1. 什么是反射?优缺点
    反射在很多框架都有体现,主要的作用就是在运行时,可以分析类或者执行类的方法,并且可以直接通过获取到一个类的所有方法和属性,给我们提供了便利。
    缺点就是会有安全的问题出现,比如反射会无视泛型类型的安全检查,因为泛型类型的安全检查是在编译时期执行的。
    根据反射的概念,反射是在运行时分析类和执行类的方法的
  2. 反射的应用场景?
    Java的注解
    Spring 的注解
    基于反射的分析类,获取到类,属性,方法,方法上的参数 上的注解,获取到注解之后,可以进行进一步的处理。

SPI

  1. 什么是SPI?
    SPI就是服务提供者接口,是专门提供给开发者的接口,一般提供一些扩展框架功能
  2. SPI和API的区别?
    API 应用程序编程接口,一个API 表示的是,接口的功能有服务的提供者来实现,包括一些接口的规则,详细的功能,提供一个接口给外界的人使用,调用方不需要知道内部的核心,只需要知道怎么使用调用接口即可
    SPI 服务提供者接口,接口的规则有调用方来确认,提供给不同的服务开发者进行开发,开发出来的结果都是符合接口调用方的要求。

序列化和反序列化

  1. 序列化和反序列化分别是什么?
    序列化在Java中是对 对象 进行序列化。
    当我们要进行网络传输的时候,我们就需要将数据结果或者对象进行序列化,或者是要将文件存储到数据库的之前,存储到缓存之前都需要进行序列化。
    反序列化就是当我们要从数据库,缓存,redis等取出数据的时候,都需要进行反序列化。
  2. 序列化对应TCP/IP4层模型的哪一层?
    TCP/IP4层模型从上到下分别是 应用层,传输层,网络层,网络接口层。
    OSI 七层模型从上到下分别是 应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。
    OSI模型中的表现层是将应用层的数据进行解码,数据处理的,也就是将对象,数据接口转化为二进制流,所以,序列化对应的是OSI模型的表现层,对应TCP/IP则是应用层。
    TCP/IP 4层模型 的应用层 包含了 OSI模型的应用层,表示层和会话层
  3. 如果有些字段不想序列化怎么办?
    给不想序列化的字段(变量)添加transient关键字。
    transient关键字不能用在类和方法上。
    static 修饰的变量无论有没有添加关键字transient都是不支持序列化的。
  4. 常见的序列化协议
    Hessian、Kryo、Protobuf、ProtoStuff
  5. 为什么不使用JDK自带的序列化?
    因为不支持跨语言调用
    性能差
    存在安全问题

Java IO流

  1. 什么是IO流
    IO流就是输入输出流,在Java中分为输入流和输出流
    根据数据的处理方式又分为 字符流 和 字节流

语法糖

代指的是编程语言为了方便程序员开发程序而设计的一种特殊语法,这种语法对编程语言的功能并没有影响。实现相同的功能,基于语法糖写出来的代码往往更简单简洁且更易阅读。

Java虚拟机不能够识别Java的语法糖,必须相同Java的编译器进行解糖之后才能被Java虚拟机识别。

  1. 常见的语法糖有哪些?
    泛型,自动装箱,自动拆箱,变长参数,枚举,内部类,增强for循环等等。

根据javaguide总结
https://javaguide.cn/home.html

http://www.hkea.cn/news/688001/

相关文章:

  • 网站建设网络公整站排名
  • 南昌购物网站制作软文广告成功案例
  • 鞍山找工作哪个网站最靠谱千度搜索引擎
  • 济南做网站互联网公司英文seo推广
  • 给企业做网站的公司品牌整合营销传播
  • 互联网技术应用学什么杭州优化建筑设计
  • 重庆网站建设要点襄阳seo优化排名
  • 哪个网站用织梦做的seo站长工具查询系统
  • 本地wordpress 上传搜索引擎优化简历
  • 个人创业做网站软文营销怎么写
  • wordpress相册点击弹出框金华seo全网营销
  • 郑州手机网站建设搜狗网站收录提交入口
  • 清风网站建设抖音推广方式有哪些
  • 工作室网站开发广东网站seo营销
  • 广州正佳广场攻略深圳债务优化公司
  • 如何自己免费建网站seo网站有哪些
  • 南昌网站建设案例如何制作自己的链接
  • wordpress大流量专业的网站优化公司
  • 做进口零食批发网站百度站长管理平台
  • 网站栏目建设存在的问题关键词简谱
  • 网站备案怎么那么麻烦google chrome 网络浏览器
  • 小米手机做网站服务器nba东西部最新排名
  • 做写字楼用哪个网站更好郑州seo代理外包
  • 做网站 淘宝营销策划思路
  • 网页设计要用到什么软件聊城seo优化
  • 用wordpress做网站百度推广管理
  • 一个空间可以放两个网站吗html模板网站
  • 做试用网站的原理网站推广优化平台
  • 软件工程培训机构学费亚马逊seo什么意思
  • 做恶搞网站软件有哪些苏州seo怎么做