return 是结束当前方法
break 是跳出当前循环
continue 是终止本次循环继续下次循环
break 和 continue 只能用在循环结构语句中
return,不仅可以用在循环结构中,也可以用在循环结构外
2.
a++:当++出现在变量后面,先将变量取出赋值,然后自身在加1
++a:当++出现在变量前面,先自身加1,然后在给变量赋值
3.
Java传的只有值,因为地址值也是值。
基本数据类型传的是值,
引用数据类型数组和对象传的是地址,既是传地址,也是传值。
4.
静态代码块在类第一次加载进内存的时候就会执行, 且只执行一次
构造代码块在构造方法真正要执行之前就会执行, 每次调用构造方法都会执行一次
5
方法重写重载的面试题
Overload 重载能改变返回值类型吗?
overload是指方法重载,重载可以改变返回值类型, 方法的重载只看参数列表的异同
Override 重写和 Overload 重载的区别?
Override 即方法重写: 也就是子类中出现了和父类中方法声明一模一样的方法。方法的重写是与返回值类型有关, 即返回值类型一致且具备继承关系
Overload 即方法重载:同一个类中方法名一样,但参数列表不同的方法。返回值类型随意, 不相关。
6
一个抽象类如果没有抽象方法,可不可以定义为抽象类?如果可以,有什么意义
可以,这么做的目的只有一个,就是不让其它类创建本类对象,交给子类完成
7.abstract和static
- 1.static修饰的方法是通过类名来调用
- 2.abstract修饰的方法必须由子类来实现,并由子类对象来调用方法
- 3.对象方法与类方法是冲突的
abstract和final
- 1.final修饰的方法是不能被重写的,所以也矛盾
abstract和private
- 1.private修饰的方法不让子类访问,所以也矛盾