Java基础易错概念性问题

1.面向对象都有哪些特性以及你对这些特性的理解?java

封装,集成,多态mysql

2.& 和 && 的区别
&&有短路效果,提升代码效率面试

  1. 在 Java 中,如何跳出当前的多重嵌套循环
    标号跳出指定循环,retuet结束min方法,countinue后面的将不在执行
    4.两个对象值相同 (x.equals(y) == true) ,但却可有不一样的hashCode,这句话对不对?
    内容相等hash值必定相等,hash值相等对象不必定相等,例如:通话,重地
    5.是否能够继承String
    String被final修饰,不能够被继承 final修饰的变量会成常量不能被修改,修饰变量不能够修地址值,能够改值,方法不能重写,类不能继承
    6.当一个对象被看成参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里究竟是值传递仍是引用传递?
    引用数据,修改为员变量;基本数据,修改的是局部变量
    7.重载(overload)和重写(override)的区别?重载的方法可否根据返回类型进行区分?
    同一类中,方法名相同,参数不一样,个数不一样,类型不一样,顺序不一样,没有返回值重载
    重写:继承或者实现,父类方法知足不了子类要求,体系中子类出现和父类出现了同样的方法声明(方法名,参数列表,返回值类型)
    重载:同一类中,方法名相同,参数列表不一样,与返回值无关

8.char 型变量中能不能存储一个中文汉字,为何?
能够,有且仅有一个字符,char占两个字节,一个汉字也是
9.抽象类(abstract class)和接口(interface)有什么异同?
相同:
均可以写抽象方法,.不能实例化类不能多实现,.,抽象类被继承,接口被实现,都要重写抽象方法
不一样:
抽象类:
是一个类,使用关键字 abstract
抽象类里面能够写非抽象方法
只能单继承或者多层继承
接口:
用interface修饰
练出了抽象还有默认方法
能够多实现
10.抽 象 的 (abstract) 方 法 是 否 可 同 时 是 静 态 的 (static), 是 否 可 同 时 是 本 地 方 法(native)
不能够,会冲突;
11.阐述静态变量和实例变量的区别算法

在语法定义上的区别:spring

静态变量前要加static关键字,而实例变量前则不加。
在程序运行时的区别:sql

实例变量属于某个对象的属性,必须建立了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,因此也称为类变量,只要程序加载了类的字节码,不用建立任何实例对象,静态变量就会被分配空间,静态变量就能够被使用了。总之,实例变量必须建立对象后才能够经过这个对象来使用,静态变量则能够直接使用类名来引用。数组

  1. ==和 equals hashCode 的区别?
    基本数据类型:
    ==比较的是内容
    引用数据类型:
    ==比的是地址值,equals默认比地址值,重写按照规则比较,hashCode
  2. break 和 continue 的区别?
    跳出本循环,跳事后面的代码,继续循环
    14.String s = "Hello";s = s + " world!";这两行代码执行后,原始的 String 对象中的内容到底变了没有?
    字符串不可变,它们的值在建立后不能被更改
    经过构造方法建立
    经过 new 建立的字符串对象,每一次 new 都会申请一个内存空间,虽然内容相同,可是地址值不一样
    直接赋值方式建立
    以双引号方式给出的字符串,只要字符序列相同(顺序和大小写),不管在程序代码中出现几回,JVM 都只会创建一个 String 对象,并在字符串池中维护
    15.Java 中实现多态的机制是什么?
    父类对象指向子类引用
    16.Java 中异常分为哪些种类
    编译,运行
    17.error 和 exception 的区别?
    错误虚拟机
    异常能够捕获处理
    18,throw 和 throws 的区别
    抛出
    声明
    19,final、finally 的区别?
    final:最终的 不可被改变,类不可有子类,变量变常量,引用类型不能够改变地址
    finally:出不出错都运行,用于关闭流,关闭资源
    20,Math.round(11.5)等于多少?Math.round(- 11.5) 又等于多少?
    12,正数四舍五入
    -11负数四舍五入向上

21,数组有没有 length() 方法?String 有没有 length() 方法
数组有length属性没有方法
string有方法
集合有size方法
22,String 、 StringBuilder 、 StringBuffer 的区别?
String:内容是不可变的
StringBuilder:内容可变,线程不安全
StringBuffer:内容可变,线程安全
23,什么状况下用“+”运算符进行字符串链接比调用 StringBuffer/StringBuilder对象的 append 方法链接字符串性能更好?
在java中不管使用何种方法进行字符串拼接,底层都是StringBuilder,因此是同样的
image
最新2020整理收集的一些高频面试题(都整理成文档),有不少干货,包含mysql,netty,spring,线程,spring cloud、jvm、源码、算法等详细讲解,也有详细的学习规划图,面试题整理等,须要获取这些内容的朋友请加Q君样:909038429
/./*欢迎加入java交流Q君样:909038429一块儿吹水聊天安全

相关文章
相关标签/搜索