向上转型,与子类会不会继承父类静态方法

================子类会不会继承父类的静态方法?不会================

静态方法只属于类本身

子类不可以重写父类的静态方法,但是可以通过子类对象访问父类静态方法

public class Parent {
  public static void staticMethod(){
    System.out.println("staticparent");
  }
  public void method(){
    System.out.println("parent");
  }

  public void dd(){

    System.out.println("dd");

  }
}

public class Son{
  public static void staticMethod(){
    System.out.println("staticson");
  }
  public void method(){
    System.out.println("son");
  }
}

public class Test{
  public static void main(String[] args){
    Parent child = new Son();
    child.staticMethod();//result:staticparent
    child.method();//result:son

    child.dd();/*result:dd*/
    Son s=new Son();
    s.staticMethod();/*result:parent*/
  }
}

向上转型

向上转型的对象A,当子类存在重写父类的方法时,A会调用子类重写的方法

当子类不存在重写的方法,A就会调用父类的方法。

时间: 2024-12-21 22:44:48

向上转型,与子类会不会继承父类静态方法的相关文章

java向上转型和向下转型

一直不太明白这个概念,于是在网上搜索了一下文章转载自:http://www.cnblogs.com/fickleness/p/3149011.html 转型是在继承的基础上而言的,继承是面向对象语言中,代码复用的一种机制,通过继承,子类可以复用父类的功能,如果父类不能满足当前子类的需求,则子类可以重写父类中的方法来加以扩展. 向上转型:子类引用的对象转换为父类类型称为向上转型.通俗地说就是是将子类对象转为父类对象.此处父类对象可以是接口 向下转型:父类引用的对象转换为子类类型称为向下转型. 前者

Java入门记(二):向上转型与向下转型

在对Java学习的过程中,对于转型这种操作比较迷茫,特总结出了此文.例子参考了<Java编程思想>. 目录 几个同义词 向上转型与向下转型 例一:向上转型,调用指定的父类方法 例二:向上转型,动态绑定 例三:向上转型,静态绑定 例四:向下转型 转型的误区 1.运行信息(RTTI) 2.数组类型 3.Java容器 几个同义词 首先是几组同义词,由于在不同的书上使用的不同,是造成混淆的原因之一. 父类/超类/基类 子类/导出类/继承类/派生类 静态绑定/前期绑定 动态绑定/后期绑定/运行时绑定 向

[转]向上转型与向下转型

原文地址:http://www.cnblogs.com/wuyuegb2312/p/3858521.html 在对Java学习的过程中,对于转型这种操作比较迷茫,特总结出了此文.例子参考了<Java编程思想>. 目录 几个同义词 向上转型与向下转型 例一:向上转型,调用指定的父类方法 例二:向上转型,动态绑定 例三:向上转型,静态绑定 例四:向下转型 转型的误区 1.运行信息(RTTI) 2.数组类型 3.Java容器 几个同义词 首先是几组同义词.它们出现在不同的书籍上,这是造成理解混淆的原

java 向上转型和向下转型

学习向上转型和向下转型怎么用没多难,但是为什么那样用,我搞了很多次没弄明白.没弄明白的原因是平时学习时之看例子,而例子一般都比较简单,没有对象之间的调用,一般就是一个对象调用自己的方法. 首先看下怎么用转型. 要转型,首先要有继承.继承是面向对象语言中一个代码复用的机制,简单说就是子类继承了父类中的非私有属性和可以继承的方法,然后子类可以继续扩展自己的属性及方法. 向上转型:子类对象转为父类,父类可以是接口.公式:Father f = new Son();Father是父类或接口,son是子类.

向上转型和向下转型

对象的多态性: 向上转型:子类对象变为父类对象 向下转型:父类对象变为子类对象 class A{ public void print(){ System.out.println("A"); } } class B extends A{ public void print(){ System.out.println("B"); } } class C extends A{ public void print(){ System.out.println("C&

Java转型(向上转型和向下转型)

在Java编程中经常碰到类型转换,对象类型转换主要包括向上转型和向下转型. 5.13.1 向上转型 我们在现实中常常这样说:这个人会唱歌.在这里,我们并不关心这个人是黑人还是白人,是成人还是小孩,也就是说我们更倾向于使用抽象概念"人".再例如,麻雀是鸟类的一种(鸟类的子类),而鸟类则是动物中的一种(动物的子类).我们现实中也经常这样说:麻雀是鸟.这两种说法实际上就是所谓的向上转型,通俗地说就是子类转型成父类.这也符合Java提倡的面向抽象编程思想.来看下面的代码: package a.

【JAVA】关于向上转型与向下转型

向上转型: 子类引用的对象转换为父类类型称为向上转型.通俗地说就是是将子类对象转为父类对象.此处父类对象可以是接口 1 public class Animal { 2 public void eat(){ 3 System.out.println("Animal eat!"); 4 } 5 } 6 7 class Bird extends Animal{ 8 public void eat(){ 9 System.out.println("Bird eat!");

java的向上转型总结

在<think of java>中对'向上转型'有着如下的描述 看完之后很蒙圈,所以自己在网上找了一些描述,并自己做了简单的总结 简单的例子 class A{ public void A1(){ System.out.println("父类方法1"); }public void A2() { System.out.println("父类方法2"); }} class B extends A{ public void A1() { System.out.p

【java入门点滴】向上转型与向下转型

向上转型: 简单理解就是由 子类--->基类 转换的过程.在此过程中,唯一发生的事情就是“子类新增方法的丢失”.我个人理解这个过程是:子类--①-->基类--②-->子类(阉割版) 在过程 ①,会把子类扩展新增方法给丢弃掉: 在过程 ②,通过“后期绑定(多态)”,检测到子类对象:但是,需要注意的是:如果基类中有方法,而子类中并没有重新实现,那么依然会调用基类中的方法:具体参看下面的demo: 需要特别注意的是:“动态绑定”,不包含声明为private(private其实也被编译为了fin