企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
1.Java的数据类型怎么分类的? Java的数据类型 分为:基本数据类型和引用类型。 Java基本数据类型:整数类型(byte,short,int,long),浮点类型(float,double) ,字符类型(char),布尔类型(boolean) Java引用数据类型:类(class),接口(interface),数组,enum(枚举),注解(@interface. 基本数据类型转换 2. Java标识符命名规范,给类名,方法 名,变量名起名字的原则。 3.Java面向对象的特征? 3.1封装 什么是封装? 为什么要封装? 封装是对类中的属性私有,private修饰。作用或者是目的:提高数据访问的安全性,那么不能够直接去访问类中的私有 的属性, 而是通过方法间接的去访问。可以通过方法记录访问的相关信息。(日志,权限). 在多线程情况下,我们对数据的安全性,是通过同步方法或同步块来完成,【ThreadLocal,lock】 ,保证数据的安全性。 继续发挥,讲解 同步方法或同步块的优缺点。 3.2继承 java的继承是子类继承父类的 属性和方法,减少代码的冗余,父类抽取子类的属性和方法,在项目 中,你怎么用的?。要注意的是:子类和父类具有同步变量,父类的同名变量子类将不再继承。 java的继承是单继承。(炫耀下: python是多继承,继承的原则是:广度优先). java的继承是方法级的抽取,减少冗余。 java减少冗余代码,可以通过aop面向切面编程,减少业务控制代码冗余,属于方法内的冗余代码的抽取。【没学】 3.3多态 java的多态,是指同一个方法名,不同的实现结果,就比如:语文中的多音字,同一个字,不同的读音。 具体的体现是什么? 1. 在一个类中,叫做方法重载,也叫做编译型多态。调用哪个重载的方法,是有方法的参数来决定的。 2.在继承关系中 ,也叫做方法重写,方法覆盖,也叫做运行时多态。调用哪个重写的方法,是由new 的那个对象来决定的。 new 对象是 写在代码中的, 这个对象是在代码中控制的,也就是对象的生成权是由代码控制的。对象生成的控制器有代码来控制转移给Spring容器通过xml,注解来生成的。 3.4抽象 java的抽象是为了增强动态绑定(一个父类指向多个子类的现象),为了增强多态,为了方法重写,具体的实现是抽象类和接口。 4. java一个类的生命周期? 静态块------------------------------根据main函数的代码的顺序来决定调用的顺序。 (匿名块,静态方法,构造方法,实例方法). 5.继承关系的类的生命周期? 父类的静态块--子类的静态块-----------------根据main函数的代码的顺序来决定调用的顺序。 (匿名块,静态方法,构造方法,实例方法). 6.java的块有哪些? 静态块,匿名块,同步块, finally 块 7.方法的参数传递,基本数据类型和引用类型的区别?可以写代码练习。 8.super和this区别? super是访问父类, this是访问本类, 在构造函数中必须在第一行。 9.设计模式 可以写代码练习。 单例模式,工厂模式.... 10.接口和抽象类的区别. 4.Java异常 4.0什么叫java错误, 编译不能通过错误,编译成功运行时错误(异常),逻辑错误() 内存泄漏,直接宕机,程序员没有办法处理。 4.1 你遇到过哪些异常?怎么解决的?至少10个 空指针异常(),类没有发现的异常(),sql异常(),线程状态异常(),数组下标越界异常() 类型转换异常() , 文件找不到的异常(), 流异常(), 算术异常() ,端口绑定异常(), 序列化异常() 4.2 垃圾回收器 (GC,四种引用) 没有讲。 4.3 final和finall的区别? final修饰变量,修饰方法,修饰类。 finally 块:始终执行。不管什么情况下,都会执行。 4.4 数据结构你知道有哪些?特点 数组,链表,哈希,栈,队列,二叉树。 4.5Java集合的分类?哪些是同步的?各自特点?过滤重复?排序?在项目中怎么用的? 4.6创建线程方式?线程生命周期?线程安全?线程通信?线程交替?定时线程?线程池?在项目中怎么用的? 创建线程方式:继承Thread,实现Runnable,定时线程,返回值线程,线程池。 线程生命周期:创建,可运行,运行,在运行期间的调度,死亡。 线程安全:synchronized同步方法,同步块,它是以性能换安全。 ThreadLocal 线程本地变量 它是以内存换安全。 lock锁。 线程通信:主线程向子线程 构造函数 子线程向主线程,子线程和子线程 wait和notify 必须用在synchronized环境下。 定时线程:TimerTask 线程池:自定义和JDK自带的线程池 在项目中怎么用的线程,和线程池???????? 4.7java流?流的分类?序列化和反序列化?流的性能。 4.8套接字?在项目中怎么用的? 4.9什么是RMI?名字解释 什么是SPI?名字解释 4.10 Collection和Collections的区别?什么是枚举类型?transient关键字表示什么?【没有讲】. 4.11 java内部类作用?内部类分类? java内部类作用:为了加强封装。 内部类的分类:普通内部类 静态内部类 局部内部类 匿名内部类