杭州云尖信息 Java 实习一面
杭州云尖信息 Java 实习一面
1.项目是自学的还是学校的
2.简单介绍一下你的项目
3.项目中你熟悉的模块是什么,讲一下
4.项目的业务场景
5.常见的集合
6.arraysList和LinkedList的区别
7.你一般是怎么进行异常处理的
8.try-catch-finally的执行顺序
try 块: 先执行 try 块内的代码。如果这段代码没有抛出异常,那么 catch 和 finally 块的执行取决于是否存在异常。 如果 try 块内的代码抛出异常,执行会立即转移到相应的 catch 块(如果有匹配的 catch 块)。 catch 块: 当 try 块抛出一个异常并且 catch 块可以处理该异常时,catch 块的代码将被执行。 如果没有异常发生,或者抛出的异常不匹配任何 catch 块,catch 块将被跳过。 finally 块: 不管 try 是否抛出异常,或者 catch 是否执行,finally 块的代码总是会被执行。 它用于包含必须在任何情况下都需要执行的清理代码,如关闭文件流、释放资源等。 return 语句: 如果在 try 或 catch 块中有 return 语句,finally 块仍然会先执行,然后才会返回值。 如果 finally 块也有 return 语句,那么它会覆盖 try 或 catch 中的 return,并用其自身的返回值返回。
9.final的作用
1)修饰类:
表明该类不可被继承,类中的所有成员方法都隐式的被指定为final方法,成员变量则可以定义为final,也可以不定义为final;
2)修饰方法:
用final修饰方法的原因有两个:
锁定这个方法,防止任何继承类修改它的含义; 提高效率:在方法前面添加final进行修饰可以提高效率,其原理是基于内联/内嵌(inline)机制,它会使你在调用final方法时,直接将方法的主体插入到调用处,从而省去调用函数所花费的开销。但是如果方法过于庞大或者其中有循环的话,这种提高效率的方法可能会失效。
3)修饰变量:
终于还是到这里了。
在java中,final对变量的修饰的作用,是防止变量值的改变;
如果修饰的是基本类型数据变量,则该变量的值不能发生改变; 如果修饰的是引用类型数据变量,则该变量不会内二次初始化;
10.final可以修饰什么
⬆
11.重载和重写的区别。
1.重写(Override) 从字面上看,重写就是 重新写一遍的意思。其实就是在子类中把父类本身有的方法重新写一遍。子类继承了父类原有的方法,但有时子类并不想原封不动的继承父类中的某个方法,所以在方法名,参数列表,返回类型(除过子类中方法的返回值是父类中方法返回值的子类时)都相同的情况下, 对方法体进行修改或重写,这就是重写。但要注意子类函数的访问修饰权限不能少于父类的。 重写 总结: 1.发生在父类与子类之间 2.方法名,参数列表,返回类型(除过子类中方法的返回类型是父类中返回类型的子类)必须相同 3.访问修饰符的限制一定要大于被重写方法的访问修饰符(public>protected>default>private) 4.重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常
2.重载(Overload)
在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同甚至是)则视为重载。同时,重载对返回类型没有要求,可以相同也可以不同,但。
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
大学全部面经从大一到大四,从实习、秋招、春招等等,各种岗位,中小厂,乃至大厂面经! 公粽号:程序员落叶,里面分享全部文章详情。
