一探java之java继承extends
来源:互联网 发布:slam算法工作原理 编辑:程序博客网 时间:2024/06/09 20:07
一探java之java继承extends
Java的基本数据类型存放在java栈中,Java引用类型,会在栈中保存一个对该对象所在的堆的地址。
1、java继承。继承实现了对父类更好的扩展
2、java可以通过接口实现多重继承的概念
3、具有继承关系的子类与父类是isa关系,子类的实力可以赋给父类性的引用变量
SuperClasscc =newChildClass();//正确
ChildClasscc =newSuperClass();//错误编译不通过
4、子类可以覆盖父类的public和protected方法,如果子类和超类在同一个包中,还可以覆盖默认访问级别的方法。
5、当调用子类的某个构造器来将它实例化时,构造器的第一个动作是调用超类的无参构造器,在父类中,构造器也调用直接父类的构造器,这个过程会不断重复,直至到Object类位置,当创建一个子类时,他所有的父类都会被实例化。如果在子类的构造方法中没有显示调用父类的无参构造器,java编译器会自动为其加上。
6、super表示当前对象直接父类的一个实例。
7、如果超类中没有无参构造器,子类中也没有显示调用另一构造器,会产生编译错误。因为编译器添加了一个对超类无参构造器的隐式调用
packagefirstToJava;
publicclassSuperClass02 {
publicSuperClass02(Stringname){
System.out.println("我是:"+name);
}
}
packagefirstToJava;
publicclassChildClass02extendsSuperClass02{
publicChildClass02(Stringname){
super(name);//如果不显示调用父类的有参构造器,编译会报错。
}
publicstaticvoidmain(String[]args){
ChildClass02cc =newChildClass02("张三");
}
}
控制台输出
我是:张三
8、对于一个子类而言,能够从他自己的构造器调用父类的构造器,这是很有意义的事情,因为子类的实例必须始终配有其每个父类的实例。因此,对于子类中未覆盖的方法的调用,将被传递给其父类,直到在该继承层次结构中找到第一个方法为止。
packagefirstToJava;
publicclassSuperClass01 {
publicSuperClass01(){
System.out.println("子类调用父类。。。");
}
publicvoidpaint(){
System.out.println("绘画开始。。。");
}
publicvoidstart(){
System.out.println("正在进行中。。。");
}
}
packagefirstToJava;
publicclassChildClass01extendsSuperClass01{
publicChildClass01(){
}
@Override
publicvoidstart() {
System.out.println("已经开始了。。。");
}
}
packagefirstToJava;
publicclassChildClass01_01extendsChildClass01{
publicChildClass01_01(){
}
publicstaticvoidmain(String[]args){
ChildClass01_01cc =newChildClass01_01();
cc.start();
cc.paint();
}
}
控制台输出
子类调用父类。。。
已经开始了。。。
绘画开始。。。
9、super是直接父类的一个实例,因此可以访问到超类中能通过子类看到的任何成员。调用父类成员的语句不用放在第一行,而调用父类构造器的语句必须放在方法体的第一行。
10、类型转换的原则是只能将一个子类的实例转换成它的父类。将一个对象转换成一个父类,叫做向上转换(upcast)。将一个父类对象转换成子类,叫做向下转换(downcast),向下转换时必须进行强制转换。向下转换只允许发生在父类引用已经指向子类对象的时候。
11、不能继承带有final修饰的类、不能覆盖带有final修饰的方法。
12、instanceof可以用来检验某一个对象是否为某种指定类型。在一个null引用变量中应用instanceof时将返回false。
- 一探java之java继承extends
- java之extends继承
- java 面向对象之继承extends
- 【java的继承extends】
- Java中继承 extends
- Java day05 继承 extends
- java继承关键字extends
- Java--继承(extends)
- java继承extends
- java-extends(继承)
- java笔记-继承(Extends)
- java学习笔记-继承extends
- Java 继承(extends)详解
- Java基础学习之——类的继承extends
- java基础之继承extends,以及子类实例化过程
- Java之extends implement
- Java之extends implements
- Java之extends关键字
- UML(一)——用例图,类图,对象图
- 关于DialogBox的使用
- centos6.5安装php;apache;phpmyadmin
- LeetCode | Symmetric Tree
- node跨域cors模块
- 一探java之java继承extends
- MATRIX_CHAIN
- Handyscope HS4 Instrument manual 采集卡仪器手册(chapter two)
- 在线冲印网站 小记
- 题目1009:二叉搜索树
- 使用Hibernate SQLquery实现动态表
- Kill命令
- 今天心情不错
- 第五章思维导图