package day07;
class Fu
{
int num = 5;
}
class Zi extends Fu
{
int num =7;
void show()
{
int num =9;
System.out.println(num); }
}
public class Extends {
public static void main(String[] args) {
Zi zi = new Zi();
zi.show();
} } 9//自己有就不去找
package day07;
class Fu
{
int num = 5;
}
class Zi extends Fu
{
int num =7;
void show()
{
int num =9;
System.out.println(this.num); }
}
public class Extends {
public static void main(String[] args) {
Zi zi = new Zi();
zi.show();
} }

7

 
package day07;
class Fu
{
int num = 5;
}
class Zi extends Fu
{
int num =7;
void show()
{
int num =9;
System.out.println(super.num); }
}
public class Extends {
public static void main(String[] args) {
Zi zi = new Zi();
zi.show();
} }

5

 

super代表的是父类,this代表的是本类对象的引用,super代表父类所属空间

注意:子类父类中通常不会出现同名属性,父类中既然已经定义了num属性,子类就没有必要定义该属性

子类无法覆父类中的show方法,因为类型不一样

package day07;
class Fu
{
public static void show()
{ System.out.println("run show1");
}
public void show2()
{
System.out.println("haha1");
}
}
class Zi extends Fu
{ public static void show()
{ System.out.println("run show2"); }
public void show2()
{
System.out.println("haha2"); }
}
public class Extends {
public static void main(String[] args) {
Fu f = new Zi();//注意这个地方对象的创建,以及结果,静态方法以及成员变量和普通方法的区别
f.show();
f.show2();
} }

run show1
haha2


对比:

package day07;
class Fu
{
public static void show()
{ System.out.println("run show1");
}
public void show2()
{
System.out.println("haha1");
}
}
class Zi extends Fu
{ public static void show()
{ System.out.println("run show2"); }
public void show2()
{
System.out.println("haha2"); }
}
public class Extends {
public static void main(String[] args) {
Zi z = new Zi();//注意这个地方对象的创建,以及结果,静态方法以及成员变量和普通方法的区别
z.show();
z.show2();
} }

run show2
haha2

 

覆盖的时候注意:

1、子类覆盖父类的时候保证覆盖方法的权限大于等于被覆盖函数的权限

2、覆盖方法有静态修士的时候,静态只能覆盖静态,或者被静态覆盖

java继承示例的更多相关文章

  1. Java 继承中构造方法的执行顺序问题

    在Java中,如果一个类没有任何显式创建的构造器则该类默认会有一个无参构造器:如果显式创建了有参构造器则该类就不再有默认无参构造器. 在Java继承中,构造器并不能被继承,而是被显示或隐式调用. 1. ...

  2. Java - 20 Java 继承

    Java 继承 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承可以理解为一个对象从另一个对象获取属性的过程. 如果类A是类B的父类,而类B是类C的父类,我们也称C是A的子 ...

  3. java继承使用的细节问题?

    关于java继承的基本概念就不多说了,下面就说说继承使用应该注意的细节问题? 示例 一: package com.bizvane; class Fu{ public Fu() { System.out ...

  4. Java 泛型示例 - 泛型方法,类,接口

    Java Genrics 是 Java 5 中引入的最重要的功能之一. 如果您一直在使用Java Collections并使用版本 5 或更高版本,那么我确定您已经使用过它. Java 中具有集合类的 ...

  5. java继承内存分配

    java继承内存分配 继承的基本概念: * Java不支持多继承,也就是说子类至多只能有一个父类. * 子类继承了其父类中不是私有的成员变量和成员方法,作为自己的成员变量和方法. * 子类中定义的成员 ...

  6. 图解Java继承内存分配

    图解Java继承内存分配   继承的基本概念: (1)Java不支持多继承,也就是说子类至多只能有一个父类. (2)子类继承了其父类中不是私有的成员变量和成员方法,作为自己的成员变量和方法. (3)子 ...

  7. java继承基础详解

    java继承基础详解 继承是一种由已存在的类型创建一个或多个子类的机制,即在现有类的基础上构建子类. 在java中使用关键字extends表示继承关系. 基本语法结构: 访问控制符 class 子类名 ...

  8. Java 继承01

    继承 ●示例 class Person { public String name; Person(){ System.out.println("Person Constrctor...&qu ...

  9. Java继承与组合

    Java继承与组合 继承 java 中使用extends关键字表示继承关系,当创建一个类时,如果没有明确指出要继承的类,则是隐式地从根类Object进行继承. 子类继承父类的成员变量 子类能够继承父类 ...

随机推荐

  1. Apache Shiro 使用手册(三)Shiro 授权(转发:http://kdboy.iteye.com/blog/1155450)

    授权即访问控制,它将判断用户在应用程序中对资源是否拥有相应的访问权限. 如,判断一个用户有查看页面的权限,编辑数据的权限,拥有某一按钮的权限,以及是否拥有打印的权限等等. 一.授权的三要素 授权有着三 ...

  2. windows下SecureCRT无法使用backspace(空格键)和上下左右键

    在使用SecureCRT登陆liunx(我的为CenterOS)系统,发现删除(backspace)键.和上下左右键不起作用,郁闷了很久没有找到解决办法, 今天终于看到了一篇有用的文章,在此记录一下! ...

  3. CSS选择器(三)

    九.CSS 伪类 (Pseudo-classes) CSS 伪类用于向某些选择器添加特殊的效果. CSS 伪类 (Pseudo-classes)实例: 1.向文档中的超链接添加不同的颜色. <s ...

  4. 每天一个Linux命令(31)diff命令

    diff命令在最简单的情况下,比较给定的两个文件的不同.如果使用“-”代替“文件”参数,则要比较的内容将来自标准输入.diff命令是以逐行的方式,比较文本文件的异同处.如果该命令指定进行目录的比较,则 ...

  5. js 数组的所有操作

    js的数组操作有很多,这里记录了常用的和不常用的数组操作方法. 一.数组的创建 数组的创建有两种方法,一种是通过字面量,另一种是通过Array构造函数. 1.字面量 var num1 = [1,2,3 ...

  6. wget 监控web服务器

    wget --timeout=$timeout --tries=$times $url -q &>/dev/null --timeout=number 设定超时时间 --tries=nu ...

  7. BestCoder Round #4 之 Miaomiao's Geometry(2014/8/10)

    最后收到邮件说注意小数的问题!此代码并没有过所有数据,请读者参考算法, 自己再去修改一下吧!注意小数问题! Miaomiao's Geometry Time Limit: 2000/1000 MS ( ...

  8. (vue.js)vue中引用了别的组件 ,如何使this指向Vue对象

    Vue中引用了别的组件 ,如何使this指向Vue对象 今天学习Vue组件传值, 通过创建Vue实例, 广播和监听实现传值, 但是传值之后无法直接将得到的值应用到Vue对象, 因为这相当于引用改了别的 ...

  9. C#实现对外部程序的调用操作

    测试工具,首先也是一个C#的程序,它的主要目的是: 1:获取上文应用程序的窗口句柄,继而获取TextBox句柄及Button句柄: 2:为TextBox随机填入一些字符: 3:模拟点击Button: ...

  10. 启动Hive时报错

    报错信息如下 Logging initialized -bin/lib/hive-common-.jar!/hive-log4j.properties Exception in thread &quo ...