java中static方法的继承性
首先需要知道的是,java中所有的public实例方法都默认是virtual的,static方法不是virtual的,所以static方法可以被覆盖(new),但不可被重写(override)
1.被继承
父类:
public class Parents{public static void staticFunction(){System.out.println("public static function of parents");}public void callPrintName(){this.printName();} }
子类:
1 public class Child extends Parents{ 2 public static void main(String[] args){ 3 Child child=new Child(); 4 child.staticFunction(); 5 } 6 7 }
输出
public static function of parents
说明static方法可以被继承
2.被覆盖(new)
父类:
public class Parents{public static void staticFunction(){System.out.println("public static function of parents");}public void callPrintName(){this.printName();} }
子类:
public class Child extends Parents{public static void staticFunction(){System.out.println("public static function of Child");}public static void main(String[] args){Child child=new Child();child.staticFunction();}}
输出:
public static function of Child
上面输出是public static function of Child,说明static已经被覆盖(new)了
3.不是virtual,即不能实重写(override)
//父类 public class Parents{private void printName(){System.out.println("private function of parents");}public static void staticFunction(){System.out.println("public static function of parents");}public void callPrintName(){this.printName();} }//子类 public class Child extends Parents{public static void staticFunction(){System.out.println("public static function of Child");}public static void main(String[] args){Parents child=new Child();child.staticFunction();}}
输出:
public static function of parents
上面的child是属于Child实例,用Parents引用,输出的是public static function of parents,说明static方法不是virtual的,不能被重写(override)。
转载于:https://www.cnblogs.com/JMLiu/p/7515795.html
java中static方法的继承性相关推荐
- java中main方法前的public static void及其后面的(String[] args)【笔记自用】
为什么Java的main方法必须是public static void? 一. void 如下,像C, C++一样,将返回值类型改为int,再返回一个0,虽然编译通过,但是运行时会报错. 找到一种可理 ...
- java中collection方法_Java 8中的Collector toCollection()方法
toCollection()Java中的Collector类的方法返回一个Collector,该Collector以遇到的顺序将输入元素累积到一个新的Collection中. 语法如下static & ...
- java 返回值判断_在Java中判断方法重载的条件除了参数外,还可以通过返回值类型判断。_学小易找答案...
[单选题]若int x;且有下面的程序片断,则输出结果是() . for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "** ...
- Java中static的作用
Java中static的作用 请先看下面这段程序: public class Hello{ public static void main(String[] args){ //(1) System.o ...
- Java中static的含义和用法
Java中static的含义和用法 static:静态的,用于修饰成员(成员变量,成员方法); 1.被static所修饰的变量或者方法会储存在数据共享区; 2.被static修饰后的成员变量只有一份! ...
- java中同步_在Java中的方法同步和语句同步(块同步) - Break易站
Java 多线程 线程主要通过共享对字段的访问和参考字段引用的对象进行通信.这种通信形式非常有效,但可能出现两种错误:线程干扰和内存一致性错误.需要一些同步构造来防止这些错误.以下示例显示了我们需要同 ...
- java中的方法求和_在Java中模拟求和类型的巧妙解决方法
java中的方法求和 在继续阅读实际文章之前,我想感谢令人敬畏的Javaslang库的作者Daniel Dietrich ,他在我面前有了这个主意: @lukaseder尝试使用静态方法<T,T ...
- java中static、final 和 static final之间的区别
java中static.final 和 static final之间的区别 static可以修饰:全局属性,方法,代码块,内部类(静态内部类或嵌套内部类) 由于静态属性和方法是属于该类的所有对象的,所 ...
- 安卓开发——JNI——回调java中的方法
JNI开发中 在C代码中回调java中的方法 package com.example.jnitest2;import android.app.Activity; import android.cont ...
最新文章
- lucene DocValues——本质是为通过docID查找某field的值
- JavaScript中的this妙用
- 华为抢购助手_华为MateBook 13轻薄本:出差者的首选,学生党的福音
- WinServer2003环境下如何配置TortiseSVN(版本控制)服务器端
- 为myeclipse分配更大的内存
- struts2标签处理下拉列表
- linux iio 设备驱动,Linux设备驱动之IIO子系统——IIO框架数据读取-Go语言中文社区...
- 将一个包含汉字的字符串逐个转化为数字,并得出该字符串的十进制和
- go get 拉取指定版本_go语言学习笔记-基础知识-3
- SharpGL学习笔记(十二) 光源例子:解决光源场景中的常见问题
- 编程计算二叉树的深度
- 使用aspose进行将word转换为图片格式
- Kaggle注册及绑定手机号
- 基于深度学习的色情视频鉴定
- 夏雨老师:告诉你初学习平面设计需要什么条件
- A Scalable Probabilistic Tensor Factorization(SPTF)论文小结
- 【前端开发遇到到的问题2】文字下方加下划线
- 香港大学计算机科学排名,香港大学计算机专业排名
- NRF24L01 使用小结—1
- Android APK签名总结-- V1签名和V2签名使用和区别