java面试基础总结.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java面试基础总结

Java的特点 语法简单,面向对象,分布式,安全性,健壮性,解释运行,高效率,与平台无关,多线程,动态性。 面向对象的特征 继承,封装,多态,抽象 (1)继承:子类继承父类的方法和属性 构造器不能继承 子类的构造器一定会调用父类的构造器 实例化子类,会分配所有父类的空间 (2)多态:重载方法,方法名一样,方法参数不同的方法 (3)抽象:在面向对象分析设计时,可将一些实体作高度抽象定义成抽象类,抽象类没有任何对象,只可作为一个模板用于创建子类,以及为面向对象提供更灵活的多态机制。 (4)封装:类封装了数据及对数据的操作,是程序中最小的模块,禁止了外界直接操作类中的数据,模块与模块之间只能通过严格控制的接口进行交互,使得模块之间的耦合度大大降低;保证了模块具有较好的独立性,程序维护和修改较容易。 3.java中的8种基本数据类型及数据类型的转换 4大类型: 逻辑类型:boolean 字符类型:char 整数类型:byte,short,int,long 浮点类型:float,double 转换:规则1,当把精度低的变量的值赋给精度高的变量时,系统自动完成数据类型的转换( 数据精度从“低”到“高”排序) 规则2,当把精度高的变量的值赋给精度低的变量时,必须使用显示类型转换运算。 规则3,char与byte或short之间的赋值必须实行强制转换。 4.局部变量与全局变量的区别 局部变量:不是声明在类括号里面的变量。方法的参数和方法内部的变量都是局部变量。 必须要先赋值,后使用,局部变量没有默认初始化值。同一范围内,不允许2个局部变量命名冲突。 5.什么是形参,什么是实参? 实参:方法调用时候实际传递的参数变量(实际的值,相当于赋值)。 形参:方法的参数定义,是临时变量(是个空壳子,相当于声明变量而没有赋值)。 6.怎么理解i++与++i i++:先把i的值赋给i++,i的值自增1,再把i++的值赋给i; ++i:先把i的值自增1 ,自增后的i的值赋给i++,,再把++i的值赋给i; 7.与的区别 和都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。 还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将改为,则会抛出NullPointerException异常。If(x==33 ++y0) y会增长,If(x==33 ++y0)不会增长 还可以用作位运算符,当操作符两边的表达式不是boolean类型时,表示按位与操作,我们通常使用0x0f来与一个整数进行运算,来获取该整数的最低4个bit位,例如,0x31 0x0f的结果为0x01。 8.switch()括号中可以是哪些数据类型。 char/short/int/byte 常用的零值有哪些? 整型的默认值:[0,0,0] boolean类型:[false,false,false] 浮点类型:[0.0,0.0,0.0] String类型:[null,null,null] char类型:\u0000 10.数组中的动态初始化与静态初始化 静态初始化是指由程序员自己为数组对象每个元素赋值,由系统自动计算出数组长度:如String[] a=new String[]{“Hellow”,”World”,”Yes”}; 动态初始化是指程序员自己指定数组对象的长度,由系统先自动为其赋值,程序中程序员可以为元素重新赋值;如:String[] b=new String[4]; for(int i=0;ib.length;i++) { b[i]=i+”hello”; } 11.列举出常用的排序方式及代码 /** 冒泡排序 * i表示轮次 * j表示每一轮比较的次数 */ public static void main(String[] args) { int[] arr={12,2,34,55,6,1}; System.out.println(Arrays.toString(bubbleSort(arr))); } public static int[] bubbleSort(int[] arr) { for(int i=0;iarr.length-1;i++) { for(int j=0;jarr.length-i-1;j++) { if(arr[j]arr[j+1]) { //这一行

文档评论(0)

karin + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档