JavaForAndroid07

一、函数的复写(重写,override)
1.具有父子关系的两个类中
2.父类和子类各有一个函数,这两个函数的定义(返回值类型、函数名和参数列表)完全相同
class Person {
String name;
int age;
void introduce() {
System.out.println("我的名字是"+name+",我的年龄是"+age);
}
}
class Student extends Person {
String address;
//重写
void introduce () {
//System.out.println("我的名字是"+name+",我的年龄是"+age);
//使用super关键字调用父类的成员函数
super.introduce();//顺序没有要求
System.out.println("我的家在"+address);
}
}
class Test {
public static void main (String args []) {
Student student = new Student();
student.name = "张三";
student.age = 20;
student.address = "北京";
student.introduce();
/*输出:
我的名字是张三,我的年龄是20
我的家在北京
/
Person p = new Person();
p.name = "李四";
p.age = 30;
p.introduce();
/
输出:
我的名字是李四,我的年龄是30
*/
}
}
//编译文件夹下的所有.java文件命令:javac *.java

二、继承、重写等综合应用:
class Printer {
void open() {
System.out.println("Open");
}
void close() {
System.out.println("Close");
}
void print(String s) {
System.out.println("print-->"+s);
}
}
class HPPrinter extends Printer {

}
class CanonPrinter extends Printer {
void close() {
this.clean();
super.close();
}
void clean() {
System.out.println("clean");
}
}
class Test {
int flag = 0;
if(flag == 0) {
HPPrinter hpPrinter = new HPPrinter();
hpPrinter.open();
hpPrinter.print("abc");
hpPrinter.close();
} else if(flag == 1) {
CanonPrinter canonPrinter = new CanonPrinter();
canonPrinter.open();
canonPrinter.print("123");
canonPrinter.close();
}
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Scala与Java的关系 Scala与Java的关系是非常紧密的!! 因为Scala是基于Java虚拟机,也就是...
    灯火gg阅读 3,489评论 1 24
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,769评论 18 399
  • 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔...
    叶总韩阅读 5,166评论 0 41
  • 假设美国亚马逊网站7-8月的网站访客流量比6月下降了10%,如果你是亚马逊网站的流量分析产品经理,请解释分析下这个...
    青旗沽酒趁梨花i阅读 218评论 0 0
  • 一板三桌五椅七凳, 行人些许, 坐! 两煎四煮六炒八炸, 蚊蝇若干, 吃!
    一季稻味阅读 237评论 0 0