1.多功能;:参数(方法的重载)
import java.util.Scanner;//导入Scanner方法
public class Str {//定义一个类
static final double PI=3.141592653589793;//定义一个全局常量并赋予初值
public static double add(double a,double b){//定义一个方法传入两个double型参数a,b
return(a*b);//返回a*b的值
}
public static double add(double r){//定义一个方法并传入一个double型参数r
return(r*r*PI);//返回r*r*PI的值
}
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
System.out.println(PI);//输出PI的值
System.out.println(add(4.0000001));//调用add方法并输出
System.out.println(add(3.0,4.0));//调用add方法并输出
}
}
运行结果:
2.模拟上课场景(接口与实现)
public interface Te {//定义一个接口
public void hello();//定义一个抽象方法
public void work();//定义一个抽象方法
}
class teacher implements Te{//定义一个teacher类并继承Te类
public void hello() {//重写hello方法
System.out.println("mike:同学们好");//输出信息
}
public void work() {//重写work方法
System.out.println("mike:老师开始上课"); //输出信息
}
}
class student implements Te{//定义一个student类并继承Te类
public void hello() {//重写hello方法
System.out.println("peter:老师好");//输出信息
}
public void work() {//重写work方法
System.out.println("peter:同学们开始记笔记");//输出信息
}
}
public class Cla {//定义一个类
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
Te[]a={new student(),new teacher()};//分别在student类和teacher类里创建对象并向上转型
for(int i=1;i<a.length;i++){//遍历数组
a[0].hello();//输出元素
a[1].hello();//输出元素
a[1].work();//输出元素
a[0].work();//输出元素
}
}
}
运行结果:
3.儿子喜欢做的事(接口与实现 多实现)
public interface IFather {//定义一个接口
void smoking();//定义一个抽象方法
void goFishing();//定义一个抽象方法
}
public interface IMother {//定义一个接口
void watchTV();//定义一个抽象方法
void cooking();//定义一个抽象方法
}
public class Me implements IFather,IMother {//定义一个新类并继承IMother类和IFather类
public void watchTV() {//重写方法
System.out.println("看电视");//输出信息
}
public void cooking() {//重写方法
System.out.println("做饭");//输出信息
}
public void smoking() {//重写方法
System.out.println("抽烟");//输出信息
}
public void goFishing() {//重写方法
System.out.println("钓鱼");//输出信息
}
public static void main(String[] args) {//主方法
IFather father=new Me();//在Me类里创建一个对象并向上转型
IMother mother=new Me();//在Me类里创建一个对象并向上转型
System.out.println("儿子喜欢做的事有:");//输出信息
mother.watchTV();//调用IMother类里的方法
mother.cooking();//调用IMother类里的方法
father.smoking();//调用IFather类里的方法
father.goFishing();//调用IFather类里的方法
}
}
运行结果: