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

网站建设管理工作自查报告网站建设最好的

网站建设管理工作自查报告,网站建设最好的,简单的网页页面设计图片,html5移动端手机网站开发流程1. 面向对象有哪些特征#xff1f;答#xff1a;继承、封装、多态2. JDK与JRE的区别是什么#xff1f;答#xff1a;JDK是java开发时所需环境#xff0c;它包含了Java开发时需要用到的API#xff0c;JRE是Java的运行时环境#xff0c;JDK包含了JRE#xff0c;他们是包含…1. 面向对象有哪些特征 答继承、封装、多态2. JDK与JRE的区别是什么 答JDK是java开发时所需环境它包含了Java开发时需要用到的APIJRE是Java的运行时环境JDK包含了JRE他们是包含关系3. Java有哪几种基本数据类型 答8种分别是int、byte、short、long、double、flot、char、boolean4. 和equals比较有什么区别 答是Java中的操作符equals是Java中Object对象提供的对象比较Api。它们的区别是比较的是左右两边对象的内存地址而equals比较的是左右对象的值5. publicprivateprotected默认的区别什么 答它们是java中的权限修饰符public可以在任何地方访问private仅仅只能在本类中访问protected可以在本类以及本类的子类中访问默认则代表可以在本包中访问6. short s11; s11;有错吗 s1s11; 有错吗 答short在和int类型进行计算的时候会转换为int类型原因是Java中精度小于int的**数值运算**的时候都回被自动转换为int后进行计算。计算后的结果也是int再将int类型赋值给short类型当然会报错所以s1s11是错误的然而s11是java底层采用了编译语法糖的形式完成的转换在编译后依然是转换为int计算只不过最终做了一次强转7. float f 1.9; 有错吗 答有错因为在Java中字面量的小数指的是double类型double为8个字节float为4个字节无法完成自动转换。如果需要将字面量的小数转换为float类型需要在小数后面加f或者F8. 和有什么区别 答前者是与符号后者是短路与符号。前者除了可以做逻辑运算和可以做位运算称为“按位与”后者只能做逻辑运算其次再逻辑运算中这两个符号都需要左右两侧表达式为true时最后结果才为true9. 2*8最有效率的计算方法是什么 答2 310. 怎么理解值传递和引用传递 答值传递传递的是变量中的数据应用传递则是传递变量的引用而不是值11. Java到底是值传递还是引用传递 答Java中8种基本数据类型传递的是值而引用数据类型传递的是引用12. 一个.java源文件的类有什么限制 答最多只能有一个public static void mian方法最少有一个类13. final关键字有哪些用法 答修饰类最终类不可被子类继承修饰方法最终方法不可被子类进行方法覆盖修饰变量常量必须在声明时赋值且之后的程序中不可改变。14. final、finally、finalize有什么区别 答除了名称相像都比相同。final属于java的修饰符finally是结合Java异常体现中的Try一起使用的标识符用来关闭一些资源finalize是Object根类中的一个方法是对象被回收之前执行的方法。15. void和Void有什么区别 答void是关键字在java中代表返回值为空Void是类名16. 为什么byte的取值范围为-128~127 答2的8次方且减去正数的零17. char类型可以存储中文汉字吗 答可以char默认为2个字节不过char采用的是**UTF-16BE**的编码集且该编码集支持中文char可以动态的更具字符内容改变字节最大可以到418. 重载和重写有什么区别 答重载是在同一类中满足重载需要方法名相同参数列表不同与返回值和访问修饰符无关。重写是在继承关系中子类对父类方法的覆盖需要满足“一同两小一大”(方法名相同返回值类型小于等于父类方法声明抛出异常小于等于父类方法访问权限修饰符大于等于父类方法)19. 构造器可以被重写和重载吗 答构造器可以被重载但是不能被重写因为构造器不能被继承20. Java中的断言assert是什么 答用于检测表达式或方法的最终结果是否符合预期21. Error和Exception有哪些区别 答Error是系统错误一般由于系统原因或JVM内部错误引起无法被程序捕获处理Exception是程序异常其中又分编译时(检查时)异常和运行时异常可以被程序捕获处理一般我们在开发中针对运行时异常进行处理。22. Java中常见的异常有哪些 答NullPointException空指针异常、Arithmeticexception算数异常、ClassCastException类型转换异常、ClassNotFoundException类为找到异常、illegalargumentexception方法参数错误异常、ArrayIndexOfOutBoundsException数组索引越界异常23. Java中常见的运行时异常有哪些 答NoSuchMethodError 为找到方法异常(反射调用方法时)NumberFormatException 数值转换异常NullPointException空指针异常、Arithmeticexception算数异常、ClassCastException类型转换异常24. 运行时异常和受检异常有什么区别 答 运行时异常包括 RuntimeException 类及其子类表示 JVM 在运行期间可能出现的异常。Java 编译器不会检查运行时异常。 受检异常是Exception 中除 RuntimeException 及其子类之外的异常。Java 编译器会检查受检异常。 RuntimeException异常和受检异常之间的区别是否强制要求调用者必须处理此异常如果强制要求调用者必须进行处理那么就使用受检异常否则就选择非受检异常(RuntimeException)。一般来讲如果没有特殊的要求我们建议使用RuntimeException异常。25. 什么时候会发生空指针异常 答对值为空的变量进行操作时26. 你知道有哪些避免空指针异常的方法 答对值为空的变量进行操作时先判断是否为空27. throw和throws有什么区别 答throw用于在方法中抛出异常throws写在方法名称后面用于声明抛出的异常类型28. try里面returnfinally还会执行吗 答会的除了System.exit(0)finally都会执行29. int和Integer有什么区别 答int是java的基本数据类型Integer是Java的引用数据类型。Integer是int的包装类它提供了对int的转换和计算等API操作起来更加方便30. 什么是包装类型有什么用 答包装类型是对基本数据类型的封装底层其实就是对基本数据类型的操作提供了API和语法糖31. 什么是自动装箱和拆箱 答基本数据类型转引用数据类型为自动拆箱反之为自动装箱32. 你怎么理解Java中的自动类型转换和强制类型转换 答小转大自动转换拓展变量的内存字节。大转小强制转换缩小内存字节损失精度33. 你怎么理解Java中的类型提升 答语法糖34. 你怎么理解强、软、弱、虚引用 答![这里写图片描述](https://img-blog.csdn.net/20180606220747457?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2p1bmp1bmJhMjY4OQ/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA/dissolve/70)35. switch是否能用在long上 答可以switch支持int、byte、short、char以及对应的包装类和String类型36. switch case支持哪几种数据类型 答如上37. String的底层实现是怎样的 答char数组以及字符串常量池38. String是可变的吗为什么? 答不可变java中的字面量字符串都存放在字符串常量池中无法改变只能引用39. 为什么不能用 拼接字符串 答因为如果用号拼接字符串JVM编译时会进行优化转变为StringBuilder拼接。单个表达式使用问题不大但是如果是多个表达式或者在循环内使用会频繁创建StringBuilder对象大大降低性能40. StringBuffer和StringBuilder有什么区别 答前者线程安全效率低后者线程不安全效率高41. StringJoiner有什么用 答用于做字符串拼接的工具类 java //间隔符是, StringJoiner joiner1 new StringJoiner(,); joiner1.add(1).add(2).add(3); System.out.println(joiner1.toString()); //1,2,3 //以[开头中间的间隔符是,以]结尾 StringJoiner joiner2 new StringJoiner(,, [, ]); joiner2.add(1).add(2).add(3); System.out.println(joiner2.toString()); //[1,2,3] //拼接sql 的in条件的时候, 使用这个就方便很多了 StringJoiner joiner3 new StringJoiner(,, , ); joiner3.add(1).add(2); //1,2 42. 普通类和抽象类有什么区别 答抽象类被abstract所修饰43. 静态内部类和普通内部类有什么区别 答普通内部类持有外部外部类的应用可以调用外部类的属性及方法而静态内部类没有持有外部内引用无法调用外部内的方法及属性。静态内部类可以有静态成员(方法属性)而非静态内部类则不能有静态成 员(方法属性)。 非静态内部类能够访问外部类的静态和非静态成员。静态内部类不能访问外 部类的非静态成员只能访问外部类的静态成员。 实例化方式不同: 1. 静态内部类:不依赖于外部类的实例直接实例化内部类对象 2. 非静态内部类:通过外部类的对象实例生成内部类对象44. 静态方法可以直接调用非静态方法吗为什么 答不能因为静态方法的加载顺序优先于非静态方法且静态方法属于类无需对象实例非静态方法则需要类的实例才能调用45. 静态变量和实力变量有什么区别 答静态变量属于类无需创建对象通过类名即可调用而实例变量需要类创建实例才可以调用。加载角度而言只要JVM加载了静态变量所处的类静态变量就以及可以使用为分配了空间。而实例变量需要创建对象之后才会为其分配空间46. 内部类可以访问其外部类的成员吗 答非静态内部类可以因为它持有者外部内的引用。47. 接口和抽象类有什么区别 答接口没有构造方法抽象类有。抽象类中可以有普通成员变量接口中没有普通成员变量。抽象类中可以包含非抽象普通方法接口中的所有方法必须都是抽象的不能有非抽象的方法。一个类可以实现多个接口用逗号隔开但只能继承一个抽象类接口不可以实现接口但可以继承接口并且可以继承多个接口用逗号隔开。48. 接口里面可以写方法实现吗 答可以jdk1.8之后可以写接口的默认方法实现49. Java中的UUID是什么 答生成一串随机的数字它保证对在同一时空中的所有机器都是唯一的50. Java类初始化顺序是怎样的 答如下 ![img](https://img-blog.csdn.net/20180705100250350?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3h5YWppYQ/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA/dissolve/70) ![img](https://img-blog.csdn.net/20180705100306225?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3h5YWppYQ/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA/dissolve/70)51. hashCode有什么作用 答hashcode在java中用于表示对象的唯一码。hashcode也用在Hash数据结构中用来计算对象存放在Hash中的位置(存储地址) !--两个相等对象的equals方法一定为true, 但两个hashcode相等的对象不一定是相等的对象--52. hashCode和identityHashCode的区别 答 1. Object类中的hashCode方法会返回一个hash码只有指向同一个对象的引用变量调用才会返回相同值而String类中放宽了要求对象里的值相等也返回相同值 2. identityHashCode方法是System类中的方法调用该方法时不管类中是否重写了Object类中的hashCode方法都执行Object类中的hashCode方法返回一个hashCode值。所以只有指向同一个对象的引用变量调用才会返回相同值53. 什么是Hash冲突 答两个对象都放入同一个hash容器中且计算出的hash值都相同。也称为hash碰撞此时的解决办法是再hash54. Java常用的元注解有哪些 答 **Target**描述了注解修饰的对象范围 - METHOD用于描述方法 - PACKAGE用于描述包 - PARAMETER用于描述方法变量 - TYPE用于描述类、接口或enum类型 **Inherited**使被它修饰的注解具有继承性 **Retention**表示注解的运行时期范围 - RetentionPolicy.SOURCE -------------注解将被编译器丢弃 - RetentionPolicy.CLASS -------------注解在class文件中可用但会被VM丢弃 - RetentionPolicy.RUNTIME ---------VM将在运行期也保留注释因此可以通过反射机制读取注解的信息 **Documented**使用 javadoc 工具为类生成帮助文档时是否要保留其注解信息55. Java泛型中的T、R、K、V、E分别指什么 答 - ? --不确定的Java类型是一个通配符泛型 - T --表示确定的Java类型 - K、V --Java中的键值对key、value - E --Element (在集合中使用因为集合中存放的是元素也表示Collection容器中的类型) Java源码中的Class代表这个类型所对应的类而Class表示类型不确定的类。56. Java金额计算怎么避免精度丢失 答使用BigDecimal进行与金钱相关的计算57. Java语法糖是什么意思 答通过提供简单的编写方式在编译时完成对复杂操作的转换。通常是指Java中的简单语法在编译时期还原成基础语法。58. transient关键字有什么作用 答将不需要序列化的属性前添加关键字transient序列化对象的时候这个属性就不会被序列化59. 如何实现对象克隆 答Java对象克隆又分深拷贝和浅拷贝浅拷贝调用Object跟对象继承下来的clone深拷贝可以借助SpringFramework提供的BeanUtils工具或者通过Java的序列化与反序列化实现。60. 对象克隆浅拷贝和深拷贝有什么区别 答浅拷贝与深拷贝的区别浅拷贝如果对象中还包括着子对象浅拷贝只能拷贝一份父对象的内存空间而子对象则只是拷贝了其引用值没有进行拷贝。深拷贝则是涉及到这个对象当前所占的所有空间(值)都进行拷贝。61. Java反射机制有什么作用 答反射可以让程序在运行时具有检测自己和获取当前运行环境的能力。 理解反射机制要了解静态编译和动态编译静态编译时在程序运行之前编译时期就以及确定的动态编译则可以才程序运行期间使程序自己改变自己的行为模式或逻辑具有高度的灵活性。典型的编程设计模式动态代{过}{滤}理就是在运行时期完成的编译62. Java反射机制有什么优缺点 答 优点增强程序灵活性和可拓展性可帮助程序进行解耦合提高自身的适应能力 缺点 1、 **性能问题。** Java反射机制中包含了一些动态类型所以Java虚拟机不能够对这些动态代码进行优化。因此反射操作的效率要比正常操作效率低很多。我们应该避免在对性能要求很高的程序或经常被执行的代码中使用反射。而且如何使用反射决定了性能的高低。如果它作为程序中较少运行的部分性能将不会成为一个问题。 2、**安全限制。** 使用反射通常需要程序的运行没有安全方面的限制。如果一个程序对安全性提出要求则最好不要使用反射。 3、**程序健壮性。** 反射允许代码执行一些通常不被允许的操作所以使用反射有可能会导致意想不到的后果。反射代码破坏了Java程序结构的抽象性所以当程序运行的平台发生变化的时候由于抽象的逻辑结构不能被识别代码产生的效果与之前会产生差异。63. 什么是宏变量和宏替换 答引用用宏变量系统会自动把宏变量替换成他所指向的地址的值 java String nb finaltest; String nb1 final; String nb2 test; final String nb11 final; final String nb22 test; String nb3 final test; String nb4 nb1 nb2; String nb5 nb11 nb22; System.out.println(nb nb3); System.out.println(nb nb4); System.out.println(nb nb5); true false true nb定义了finaltestnb3定义了 “final” “test”初始编译的时候nb3会确定初始值为finaltestJVM在编译时会对字面量的字符串进行优化因此初始值与nb相等所以会把nb3引用的地址指向nb引用的地址所以nb与nb3相等。 而nb11,nb22根据上面三条规则得知是宏变量引用用宏变量系统会自动把宏变量替换成他所指向的地址的值所以nb11nb22就会替换成finaltest然后与nb3一样这就是宏替换。 64. 什么是逃逸分析 答在编程语言的编译优化原理中分析指针动态范围的方法称之为逃逸分析。通俗一点讲当一个对象的指针被多个方法或线程引用时我们称这个指针发生了逃逸。 而用来分析这种逃逸现象的方法就称之为逃逸分析。全局变量赋值方法返回值实例引用传递。 参考文章https://blog.csdn.net/u014352080/article/details/9316560365. 什么是伪共享有什么解决方案 答参考文章https://www.cnblogs.com/tong-yuan/p/FalseSharing.html **什么是多线程环境下的伪共享false sharing** 伪共享是多线程系统每个处理器有自己的局部缓存中一个众所周知的性能问题。伪共享发生在不同处理器上的线程对变量的修改依赖于相同的缓存行如下图所示 **小知识点:** ***\*1.\**共享就是一个内存区域的数据被多个处理器访问伪共享就是不是真的共享。 这里的共享这个概念是基于逻辑层面的。实际上伪共享与共享在cache line 上实际都是共享的。 \**2.\**CPU访问的数据都是从cache line 中读取的。如果cpu 在cache 中找不到需要的变量则称缓存未命中。** **未命中时需要通过总线从内存中读取进cache 中。每次读取的内存大小就是一个cache line 的大小。** **3.****如果多个CPU访问的不同内存变量被装载到了同一个cache line 中则从程序逻辑层上讲并没有共享变量 但实际上在cache line 上他们是共享访问的这个就是典型的伪共享。** **4.****伪共享与共享 在 cache line 的层面上必须都是共享的。多个CPU对共享内存的访问安全通过缓存一致性来保证。** ***\*5\**.伪共享问题很难被发现因为线程可能访问完全不同的全局变量内存中却碰巧在很相近的位置上。如其他诸多的并发问题避免伪共享的最基本方式是仔细审查代码根据缓存行来调整你的数据结构。**66. Java 8新增了哪些特性 答最核心的特性Lambda 表达式和函数式接口以及Stream API67. Java 8中的Lambda表达式有什么作用 答Lambda 是一个匿名函数可以把Lambda表达式理解为一段可以传递的代码将代码像数据一样传递。可以写出更加简洁、灵活的代码。作为一种更加紧凑的代码风格使java的语言表达能力得到了提升。68. Java 8中的Optional类有什么作用 答以解决程序中常见的NullPointerException异常问题69. Java 8中的Repeatable注解有什么作用 答Repeatable可以用来指示某种类型的注解是可以重复添加的70. Java 8中的方法引用是指什么? 答方法引用如果函数式接口以及有具体实现了可以直接引用该方法。语法为ClassName::MethodName || ObjectName::实例方法名称71. Java 8中的Stream有什么作用 答提供了对集合计算的支持集合负责存储而Stream负责计算。它用于操作数据源所产生的序列例如复杂的查找、过滤映射数据等操作72. Java 8中的函数式编程怎么用 答函数与其他数据类型一样可以赋值给其他变量也可以作为**参数**也可以作为**返回值**。 - 代码简洁开发快速 - 易于理解降低风险 - 易于并行 - 延迟执行73. 如何获取一个Stream流对象 答 * 数组获取StreamArrays.stream(数组对象) * 集合获取Stream集合对象.stream() * 值获取Stream:Stream.of(值...)
http://www.sczhlp.com/news/203161/

相关文章:

  • 织梦源码网站建设好了后登录不了手机网站收录
  • 绍兴网站建设方案书顺德网站建设公司价位
  • 网站如何做seo优化如乐建站之家
  • 绍兴免费做网站如何建立一个网站的数据库文件
  • 2025 涂料供应厂家最新推荐榜:权威品牌测评 + 选购指南,家装工程选品必看
  • 2025 年中走丝线切割源头厂家最新推荐排行榜发布,解读优质厂家技术亮点与选择攻略伺服/高效/自动中走丝线切割厂家推荐
  • 那些网站做调查能赚钱网络平台建站
  • 网推网站虚拟机wordpress教程视频
  • 校园网站设计参考文献网站排队队列怎么做
  • 安徽省住房城乡建设厅门户网站南京快速建站公司
  • 怎么做企业的网站首页wordpress顶部栏如何修改
  • 企业建设网站应如何申请wordpress浏览数插件
  • 网站制作模板代码做网站的伪原创怎么弄
  • 广州seo网站网店详情页模板
  • 科技公司网站开发写作兼职网站
  • 网站上的平面海报怎么做怎么建设空包网站
  • 做物品租赁网站网站图片一般的像素
  • 本地的网站建设河北企业建站
  • 政协网站 是政协信息化建设建设网站模板免费下载
  • wordpress建站什么意思怎么查一个网站有没有做301
  • 汕头哪里做网站自己的网站怎么编辑器
  • 设计网站用什么语言seo推广排名重要吗
  • 郑州市精神文明建设 网站微信营销的优势有哪些
  • 做自媒体需要用的网站丽水网站开发公司电话
  • 做旅游攻略去什么网站游戏开发巨头
  • 高端网站建设公司哪家公司好湖南网站制作外包
  • 怎么做提货网站新闻软文发稿平台
  • 江门营销型网站建设公司文案馆logo设计
  • 冠县网站建设动易网站 模板
  • safari浏览器做网站seo优化