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

网站制作手机版买了服务器主机这么做网站

网站制作手机版,买了服务器主机这么做网站,乐山市建设局官方网站,私域流量运营Java基础面试题1. JVM vs JDK vs JRE 2. 什么是字节码?采用字节码的好处是什么?3. 为什么说 Java 语言“编译与解释并存”#xff1f;4. AOT 有什么优点#xff1f;为什么不全部使用 AOT 呢#xff1f;5. Java 和 C 的区别#xff1f;6. Java 中的基本数据类型#xff1… Java基础面试题1. JVM vs JDK vs JRE 2. 什么是字节码?采用字节码的好处是什么?3. 为什么说 Java 语言“编译与解释并存”4. AOT 有什么优点为什么不全部使用 AOT 呢5. Java 和 C 的区别6. Java 中的基本数据类型7. 基本类型和包装类型的区别8. 包装类型的缓存机制了解么9. 自动装箱与拆箱了解吗原理是什么10. 为什么浮点数运算的时候会有精度丢失的风险11. 如何解决浮点数运算的精度丢失问题12. 超过 long 整型的数据应该如何表示13. 成员变量与局部变量的区别14. 静态方法为什么不能调用非静态成员?15. 重载和重写有什么区别16. 什么是可变长参数17. 面向对象和面向过程的区别18. 构造方法有哪些特点是否可被 override?19. 面向对象三大特征20. 接口和抽象类有什么共同点和区别21. 深拷贝和浅拷贝区别了解吗什么是引用拷贝22. 和 equals() 的区别23. hashCode() 有什么用24. 为什么要有 hashCode25. 为什么重写 equals() 时必须重写 hashCode() 方法26. String、StringBuffer、StringBuilder 的区别27. String 为什么是不可变的?28. 字符串拼接用“” 还是 StringBuilder?29. String的equals() 和 Object的equals() 有何区别30. 字符串常量池的作用了解吗31. String s1 new String(abc);这句话创建了几个字符串对象32. intern 方法有什么作用?33. String 类型的变量和常量做“”运算时发生了什么34. Java异常体系结构35. try-catch-finally 如何使用36. 如果在try或catch块中出现returnfinally还会执行吗37. finally 中的代码一定会执行吗38. 什么是泛型有什么作用39. 泛型的使用方式有哪几种40. 项目中哪里用到了泛型41. 什么是序列化?什么是反序列化?42. I/O 流为什么要分为字节流和字符流呢?43. 值传递问题44. 什么是泛型擦除机制为什么要擦除45. Unsafe 类有什么作用 Java基础面试题 1. JVM vs JDK vs JRE 答 JVM 是运行Java字节码文件的虚拟机。字节码文件和不同系统的JVM实现是Java “一次编译随处运行” 的关键。JRE是 Java 运行时环境。包含JVM、Java基础类库等。JDK是 Java 开发工具包用于编写、编译Java程序。包含JRE、javac、javap等工具。 2. 什么是字节码?采用字节码的好处是什么? 答 字节码 Java 程序编译后javac得到的扩展名为 .class 的文件。好处 跨平台可移植性好。 “一次编译随处运行” 3. 为什么说 Java 语言“编译与解释并存” 答 由 Java 编写的程序需要先经过编译步骤生成字节码.class 文件这种字节码必须由 Java 解释器来解释执行。 4. AOT 有什么优点为什么不全部使用 AOT 呢 答 AOT(Ahead of Time Compilation)是JDK 9 引入的一种新的编译模式。和 JIT 不同的是这种编译模式会在程序被执行前就将其编译成机器码属于静态编译C、 CRustGo 等语言就是静态编译。优点AOT 可以提高Java 程序的启动速度减少内存占用适合云原生场景。为什么不全部使用AOT AOT 编译无法支持 Java 的一些动态特性如反射、动态代理、动态加载等。很多框架和库如 Spring、CGLIB都用到了这些特性。如果只使用 AOT 编译那就没办法使用这些框架和库了。 5. Java 和 C 的区别 答 Java 有垃圾回收机制(GC)C需要手动释放内存。Java 的类是单继承的C 支持多重继承。C 同时支持方法重载和操作符重载Java 只支持方法重载 6. Java 中的基本数据类型 答 Java 中有 8 种基本数据类型分别为 6种数字类型 4种整型byte、short、int、long2种浮点型float、double 1种字符类型char1种布尔类型boolean 7. 基本类型和包装类型的区别 答 用途包装类型可用于泛型而基本类型不可以。存储方式 基本数据类型的局部变量存放在 Java 虚拟机栈中的局部变量表中基本数据类型的成员变量存放在 Java 虚拟机的堆中。包装类型属于对象类型是存在于堆中。占用空间 包装类型属于对象类型占用的空间比基本类型要大默认值 基本类型有各自的默认值包装类型的默认值为null比较方式 对于基本数据类型来说 比较的是值。对于包装数据类型来说 比较的是对象的内存地址。包装类型的比较使用 equals() 方法。 8. 包装类型的缓存机制了解么 答 Byte,Short,Integer,Long 这 4 种包装类默认创建了数值 [-128127] 的相应类型的缓存数据Float,Double 没有实现缓存机制。Character 创建了数值在 [0,127] 范围的缓存数据 9. 自动装箱与拆箱了解吗原理是什么 答 装箱将基本数据类型用它们对应的包装类型包装起来。拆箱将包装类型转换为基本数据类型。原理 Integer i 10 等价于 Integer i Integer.valueOf(10) 装箱int n i 等价于 int n i.intValue() 拆箱 10. 为什么浮点数运算的时候会有精度丢失的风险 答 无限循环的小数存储在计算机时小数转换成二进制小数部分需要一直乘2直到为0只能被截断所以就会导致小数精度发生损失的情况。 11. 如何解决浮点数运算的精度丢失问题 答 可以使用 BigDecimal 类来进行浮点数的运算。 12. 超过 long 整型的数据应该如何表示 答 可以使用BigInteger类存储任意大小的整数。BigInteger 内部使用 int[] 数组来存储数据。 13. 成员变量与局部变量的区别 答 语法形式 成员变量可以被public,private,static 等修饰符所修饰局部变量不能被修饰符修饰。存储方式 成员变量存储在堆中局部变量存储在栈中。默认值 成员变量有默认值局部变量没有默认值。 14. 静态方法为什么不能调用非静态成员? 答 静态方法是属于类的随着类一起加载静态方法加载的时候还没有非静态成员。非静态成员是在对象实例化之后才存在。 15. 重载和重写有什么区别 答 重载 在同一个类中方法名要相同参数列表要不同方法返回值和访问修饰符可以不同。重写 在子类中方法名、参数列表必须相同两同返回值类型比父类方法返回值类型更小或相等抛出的异常范围小于等于父类两小访问修饰符范围大于等于父类方法一大 16. 什么是可变长参数 答 从 Java5 开始Java 支持定义可变长参数可变长参数就是允许在调用方法时传入不定长度的参数0个或多个。注意 可变参数只能作为函数的最后一个参数但其前面可以有也可以没有任何其他参数。 17. 面向对象和面向过程的区别 答 面向过程把解决问题的过程拆成一个个方法通过一个个方法的执行解决问题。面向对象会先抽象出对象然后用对象执行方法的方式解决问题。面向对象更易维护、易复用、易扩展 18. 构造方法有哪些特点是否可被 override? 答 名字与类名相同。没有返回值但不能用 void 声明构造函数。构造方法不能被 override重写,但是可以 overload重载 19. 面向对象三大特征 答 封装 把属性和方法封装到一个对象内部。继承 是一种类之间的扩展关系。子类拥有父类对象的属性和方法包括私有属性和私有方法但无法访问。可以重写父类的方法。多态 具体表现为父类的引用指向子类的实例。编译看左边运行看右边 20. 接口和抽象类有什么共同点和区别 答 共同点 都不能被实例化虽然抽象类有构造方法。都可以包含抽象方法。都可以有默认实现的方法Java 8 可以用 default 关键字在接口中定义默认方法。 区别 子类可以继承抽象类子类可以实现接口。抽象类有构造方法接口没有接口中的成员变量都是由 public static final 修饰的一个类只能继承一个类但是可以实现多个接口。接口与接口之间是可以多继承 21. 深拷贝和浅拷贝区别了解吗什么是引用拷贝 答 浅拷贝 会在堆上创建一个新的对象但如果对象内部的成员变量是引用类型的话会复用这个引用地址。也就是说拷贝对象和原对象共用同一个内部对象。深拷贝 深拷贝会完全复制整个对象包括这个对象所包含的内部对象。引用拷贝 两个不同的引用指向同一个对象 22. 和 equals() 的区别 答 对于基本类型和引用类型的作用效果是不同的 对于基本数据类型来说 比较的是值。对于引用数据类型来说 比较的是对象的内存地址。 equals() 方法存在两种使用情况 类没有重写 equals()方法通过equals()比较该类的两个对象时等价于通过“”比较这两个对象使用的默认是 Object类equals()方法。类重写了 equals()方法一般会重写equals()判断如果对象的属性相同才认为是同一个对象。 23. hashCode() 有什么用 答 hashCode() 的作用是获取哈希码确定该对象在哈希表中的索引位置。hashCode() 定义在 Object 类中任何类都包含有 hashCode() 函数 24. 为什么要有 hashCode 答 有 hashCode才能快速的找到对象在哈希表中的位置。比如在使用 HashSet 时要求元素不能重复如果没有 hashCode则在添加元素时需要一个一个的与集合中的元素进行比较。有了 hashCode 后先判断对应哈希位置是否有元素如果没有则认为集合中没有这个元素。如果有则再调用 equals()方法比较元素的属性是否相同。这样就大大减少了 equals 的次数相应就大大提高了执行速度。 25. 为什么重写 equals() 时必须重写 hashCode() 方法 答 重写 equals() 方法用来比较对象的属性是否相同。重写了 equals() 了但没有重写 hashCode() 方法hashCode() 还是根据地址值生成的哈希码。那么在使用 HashSet 集合时有2个不同的对象他们的属性值相同但是地址不一样但还是会加入到HashSet集合中。 26. String、StringBuffer、StringBuilder 的区别 答 String 是不可变的即变量指向对象的地址不能改变StringBuffer 继承 AbstractStringBuilder 类AbstractStringBuilder 类中使用字符数组保存字符串并且定义了许多修改字符串的方法append()。StringBuffer 对方法加了同步锁保证线程安全。StringBuilder 同样也继承 AbstractStringBuilder 类方法没有加锁不能保证线程安全。 27. String 为什么是不可变的? 答 String 类中使用 private 关键字修饰字符数组来保存字符串没有提供/暴露修改这个字符串的方法。String 类被 final 修饰导致其不能被继承进而避免了子类破坏 String 不可变。 28. 字符串拼接用“” 还是 StringBuilder? 答 字符串对象通过“”的字符串拼接方式实际上是通过 StringBuilder 调用 append() 方法实现的拼接完成之后调用 toString() 得到一个 String 对象 。注意在循环内使用“”进行字符串的拼接的话会创建多个的 StringBuilder 对象。 29. String的equals() 和 Object的equals() 有何区别 答 String 中的 equals 方法是被重写过的比较的是 String 字符串的值是否相等。 Object 的 equals 方法是比较的对象的内存地址。 30. 字符串常量池的作用了解吗 答 字符串常量池是 JVM 为了提升性能和减少内存消耗针对字符串String 类在堆上专门开辟的一块区域。主要目的是为了避免字符串的重复创建。 31. String s1 new String(“abc”);这句话创建了几个字符串对象 答 会创建 1 或 2 个字符串对象。 如果字符串常量池中没有 “abc” 的引用则会在堆中创建2个字符串对象将其中一个引用保存到字符串常量池中。如果字符串常量池有了“abc”的引用则会在堆中创建1个字符串对象局部变量s1会指向这个对象。 32. intern 方法有什么作用? 答 intern() 是一个 native本地方法其作用是将指定的字符串对象的引用保存在字符串常量池中可以简单分为两种情况 如果字符串常量池中保存了对应的字符串对象的引用就直接返回该引用。如果字符串常量池中没有保存了对应的字符串对象的引用那就在常量池中创建一个指向该字符串对象的引用并返回。 33. String 类型的变量和常量做“”运算时发生了什么 答 如果是2个字符串常量做 则在编译期间会将2个字符串拼接之后 JVM 会放入到字符串常量池中。如果字符串常量和变量做 因为引用的值在程序编译期是无法确定所以编译器无法对其进行优化。还是会在堆中创建对象。注意字符串变量使用 final 关键字声明之后可以让编译器当做常量来处理。 String str1 str; String str2 ing; String str3 str ing; String str4 str1 str2; String str5 string; System.out.println(str3 str4);//false System.out.println(str3 str5);//truefinal String str1 str; final String str2 ing; // 下面两个表达式其实是等价的 String c str ing;// 常量池中的对象 String d str1 str2; // 常量池中的对象 System.out.println(c d);// true34. Java异常体系结构 答 异常的基类是Throwable类它有2个子类 Exception用户程序可以捕获的异常。Error 程序无法处理的错误。例如StackOverflowError 堆栈溢出错误等。 Exception 又分为 Checked Exception (受检异常必须处理) 和 Unchecked Exception 非受检异常可以不处理 受检异常必须使用 try-catch 进行捕获或是用 throws 向上抛出。 IOExceptionFileNotFoundException 非受检异常程序不需要进行处理就可以通过编译。 NullPointerExceptionClassCastExceptionIllegalArgumentExceptionIndexOutOfBoundsException 35. try-catch-finally 如何使用 答 try块用于捕获异常。其后可接零个或多个 catch 块如果没有 catch 块则必须跟一个 finally 块。catch块用于处理 try 捕获到的异常。finally 块无论是否捕获或处理异常finally 块里的语句都会被执行。当在 try 块或 catch 块中遇到 return 语句时finally 语句块将在方法返回之前被执行。 36. 如果在try或catch块中出现returnfinally还会执行吗 答 会执行执行完finally后再去执行 try 或 catch 块中出现return。注意 如果 finally 中有 return则在 finally 中会直接结束不再执行 try 或 catch 块中出现return。 37. finally 中的代码一定会执行吗 答 不一定 在 finally 语句中发生了异常不会执行程序所有的线程死亡不会执行关闭CPU不会执行 38. 什么是泛型有什么作用 答 使用泛型参数可以增强代码的可读性以及稳定性。比如可以使用泛型指定往集合中存哪种类型的数据。编译器可以对泛型参数进行检测。 39. 泛型的使用方式有哪几种 答 泛型一般有三种使用方式:泛型类、泛型接口、泛型方法。 40. 项目中哪里用到了泛型 答 自定义接口通用返回结果 ResponseResult 通过参数 T 可根据具体的返回类型动态指定结果的数据类型工具类 41. 什么是序列化?什么是反序列化? 答 如果我们要把Java 对象保存在文件中或者在网络传输 Java 对象这些场景都需要用到序列化。 序列化将对象转换成二进制字节流的过程反序列化将二进制字节流转换成对象的过程 注意 使用 static 修饰的变量不会被序列化。 42. I/O 流为什么要分为字节流和字符流呢? 答 问题本质想问不管是文件读写还是网络发送接收信息的最小存储单元都是字节那为什么 I/O 流操作要分为字节流操作和字符流操作呢 如果接收方不知道字符编码类型的话解码会出现乱码问题。例如UTF-8的编码中文占3个字节GBK中文占2个字节。所以直接使用字符流避免乱码。 43. 值传递问题 答 Java 中将实参传递给方法或函数的方式是 值传递 如果参数是基本类型的话传递的就是基本类型的字面量值的拷贝会创建副本。如果参数是引用类型传递的就是实参所引用的对象在堆中地址值的拷贝同样也会创建副本。 44. 什么是泛型擦除机制为什么要擦除 答 泛型擦除是指在编译期间会把泛型擦除为 Object 或将 T extends xxx 擦除为其限定类型 xxx 。为什么要擦除保证引入泛型机制但不创建新的类型减少JVM运行开销 45. Unsafe 类有什么作用 答 Unsafe 类可以直接访问系统内存资源、自主管理内存资源。一般不建议直接使用Unsafe类。用途 内存操作可以直接对内存进行读写操作包括获取对象字段的偏移量、设置对象字段的值、获取和设置数组元素的值等。类的加载和初始化可以手动加载和初始化类执行类构造器等操作CAS操作提供了对CASCompare And Swap操作的支持线程调度可以手动创建和操作线程
http://www.dnsts.com.cn/news/229631.html

相关文章:

  • 网站建设费记在什么科目下wordpress文字字幕
  • cdr做网站流程番禺区保安服务公司
  • 2019网站建设建筑人才网报名平台
  • wordpress清理网站缓存wordpress酒店模板下载
  • 卖保健品可以自己做网站卖吗互联网技术试验卫星
  • 建设工程敎育那个网站亿联时代网站建设
  • 网站设计师和ui设计师跨境电商服务
  • 给工厂做代加工优化算法有哪些
  • 境外网站服务器雅虎搜索引擎入口
  • 微网站和app的区别微教育云平台网站建设
  • 买微单的网站建设装修案例英文
  • 网站空间是虚拟主机吗福州建设企业
  • 社交型网站首页面设计分析男科
  • html嵌入网站wordpress 图书模板
  • 建设公司网站费用多少怎么做网站的rss
  • 大型自适应的网站开发商城模板网站模板
  • 上海网站建设的价格低怎么搭建mysql数据库网站
  • 源码哥网站的模板做影视网站用什么源码
  • 装修公司网站源代码四核网站建设
  • 大同市住房与城乡建设厅网站网站开发工作室策划案
  • 哪个网站建站比较好共享wifi小程序搭建
  • 成都企业网站建设 四川冠辰科技营销网站的设计与实现
  • 购物商城网站模板网站设计知名企业
  • 中信建设有限责任公司 乔峰手机郑州网站关键词优化外包
  • 佛山移动网站建设费用网站后台发布图片upload failed
  • 网站建设作业教程网站建设推进计划
  • 做断桥铝最知名的网站免费制作网页平台
  • 万网如何做网站请别人做网站大概要多少钱
  • 宝安中心站是几号线网站备案许可证号查询网站
  • python 网站开发 视频网站安全检测方法