1.2: Java有基本数据类型有哪些;
四型八种
①.基本整数类型: byte→short→int→long四种;
②.浮点类型: float→double两种;
③.字符类型: char一种;
④.布尔类型: boolean一种;
1.3: JDK(开发工具包), JRE(运行环境), JVM(Java虚拟机)的区别;
①.JDK包含JRE, Java工具, Java基础类库, 是整个Java的核心;
②.JRE包含JVM, 和Java程序的一些核心类库, 是运行Java程序所必须的环境的集合;
③.是整个Java实现跨平台的最核心部分, 能够运行以Java程序开发的软件程序;
1.4: 重载和重写的区别;
①. 发生在同一个类中,方法名必须相同,参数类型不同.个数不同.顺序不同,方法返回值和访问修饰符可 以不同,发生在编译时;
②.发生在父子类中,方法名.参数列表必须相同,返回值范围小于等于父类,抛出的异常范围小于等于父 类,访问修饰符范围大于等于父类;如果父类方法访问修饰符为 private 则子类就不能重写该方法;
1.6:String、StringBuffer、StringBuilder三者之间的区别;
①.String对象是不可变的,也可以理解为常量,线程安全,但是大量字符串操作时候需要的时间明显增多,且更改
需要创建的对象比较数量比较庞大;
②.StringBuffer、StringBuilder都是AbstractStringBuilder的的子类,定义了一些字符串的基本操作;
StringBuffer对方法加了同步锁或者对调用的方法加了同步锁,所以线程安全的;
StringBuilder并没有对方法进行加同步锁,所以非线程安全的;
总结→https://www.cnblogs.com/weibanggang/p/9455926.html
String: 适用于少量的字符串操作情况;<br /> StringBuilder: 适用于单线程下在字符缓冲区进行大量操作的情况;<br /> StringBuffer: 适用于多线程下在字符缓冲区进行大量操作的情况;
1.7:接口和抽象类的区别是什么;
①.实现方式不一样:抽象类的子类使用extends来继承,接口必须适用implements来实现接口;
②.抽象类中可以使用构造方法,接口不能使用构造方法;
③.一个类只能继承一个抽象类(父类),一个类却可以实现多个接口;
④.接口中只能使用抽象方法一种,抽象类中可以使用普通方法和抽象方法两种;
使用性上→
所有子类都具有的行为放到抽象类中,部分子类具有的行为放到接口中;