一、Java基础_入门-11_break和continue关键字使用eg&方法的重载
java中的break和continue关键字使用
一、作用和区别
break的作用是跳出当前循环块(for、while、do while)或程序块(switch)(break语句则是结束整个循环过程,不再判断执行循环的条件是否成立)。
在循环块中的作用是跳出当前正在循环的循环体。在switch程序块中的作用是中断和下一个case条件的比较。
continue用于结束循环体中其后语句的执行,并跳回循环程序块的开头执行下一次循环(结束此次循环,进入下一次循环)。
二、其他用途
break和continue可以配合语句标签使用。这个都很简单,下面给个综合实例,看看就明白 了:
public class Test {
public static void main(String args[]) {
Test test = new Test ();
test.testBreak1();
test.testContinue1();
test.testBreak2();
test.testContinue2();
}
/**
* 测试continue
* continue用来结束本次循环
*/
public void testContinue1() {
for (int i = 1; i <= 5; i++) {
if (i == 3) continue;
System.out.println("i=" + i);
}
}
/**
* break来结束整个循环过程
*/
public void testBreak1() {
for (int i = 1; i <= 5; i++) {
if (i == 3) break;
System.out.println("i=" + i);
}
}
/**
* 测试带标签的break语句
* 标签只能写在循环体之前,顺便学习一下java中语句标签的定义和使用
*/
public void testBreak2() {
int i = 1;
int k = 4;
lable1:for (; i <= 5; i++, k--) {
if (k == 0) break lable1;
System.out.println("i=" + i + " ; k=" + k);
}
}
/**
* 测试带标签的continue语句
* 标签只能写在循环体之前,顺便学习一下java中语句标签的定义和使用
*/
public void testContinue2() {
lable1:for (int i = 1; i < 10; i++) {
lable2:
System.out.println("i=" + i);
for (int j = 0; j < 10; j++) {
if (j == 9) continue lable1;
}
}
}
}
原文链接:https://blog.51cto.com/lavasoft/52685
方法重载和方法重写(覆盖)的区别
方法重载(Overload)和重写(Override)是不同的概念,主要有以下区别:
1. 含义不同
方法重载:方法重载是在同一个类中,声明多个同名方法,与参数列表、参数列表的数量、参数的类型、参数的顺序 有关,与修饰符、返回值类型、抛出异常类型 无关
方法重写:方法重写的前提是发生在具有继承关系的两个类之间,方法重写规则:参数列表、返回值类型、方法名必须保持一致,
重写后的方法访问权限范围必须大于等于父类方法、抛出异常类型范围必须小于等于父类方法
2. 作用不同
方法重载:在一个类中为一种行为提供多种实现方式并提高可读性
方法重写:父类方法无法满足子类的要求,子类通过方法重写满足需求
问:Java 构造方法能否被重写和重载?
答:重写是子类方法重写父类的方法,重写的方法名不变,而类的构造方法名必须与类名一致,
假设父类的构造方法如果能够被子类重写则子类类名必须与父类类名一致才行,
所以 Java 的构造方法是不能被重写的。
而重载是针对同一个的,所以构造方法可以被重载。

浙公网安备 33010602011771号