public class OverrideTest {
public static void main(String[] args) {
//创建中国人对象
中国人 cp = new 中国人();
cp.setName("张三");
cp.speakHi();
//创建美国人对象
美国人 ap = new 美国人();
ap.setName("jack");
ap.speakHi();
}
}
/*
方法没有重写输出结果:
张三和别人打招呼!
jack和别人打招呼!
*/
/*
方法重写后的输出结果:
你好,我是"张三",很高兴认识你!
Hi,My name is "jack" ,Nice to meet you!
*/
class people {
//name属性
private String name;
//无参构造
public people() {
}
//有参构造
public people(String name) {
this.name = name;
}
//get方法
public String getName() {
return name;
}
//set方法
public void setName(String name) {
this.name = name;
}
//说话的方法
public void speakHi(){
System.out.println(this.name + "和别人打招呼!");
}
}
class 中国人 extends people{
//对父类中的speakHi()方法进行重写
public void speakHi(){
System.out.println("你好,我是\""+this.getName()+"\",很高兴认识你!");
}
}
class 美国人 extends people{
//对父类中的speakHi()方法进行重写
public void speakHi(){
System.out.println("Hi,My name is \""+this.getName()+"\" ,Nice to meet you!");
}
}