Java方法重写与super关键字
----------siwuxie095
方法的重写:
(1)在继承中也存在着重写的概念,其实就是子类定义了和父类同名的方法
(2)定义:方法名称相同,返回值类型相同,参数也相同
(3)重写限制:被子类重写的方法不能拥有比父类更严格的访问权限
(4)访问权限:private < default < public
〔private 只能在当前类中进行访问,default 可以在同一包下进行访问
(没有写
private 和 public,即是 default),public 可以在整个工程下
都可以访问〕
代码:
package com.siwuxie095.extendsdemo; class A{ public System.out.println("A---tell() 方法"); }
private
//前面什么都没有写的即是 default void print(){} } class B extends A{ public //调用父类的方法 super.tell(); System.out.println("B---重写 tell() 方法"); } } public class ExtendsDemo04 { public static B b=new B(); b.tell(); } } |
运行一览:
super 关键字:
强行调用父类方法的执行
super 不一定在重写中使用,也可以表示方法是从父类继承而来的
如:
子类对象在实例化之前,先调用父类构造方法,后调用子类构造方法的原因:
虽然没有手动去调用父类的构造方法,其实是省略了
super();,在编译时系统
自动在子类的构造方法中加入
super();
代码:
package com.siwuxie095.extendsdemo; class Father{ private String name; private
public Father() { System.out.println("父类的构造方法"); }
} class Son extends Father{ public Son() { super(); System.out.println("子类的构造方法"); }
} public class ExtendsDemo03 { public static //实例化时,先执行父类的构造方法,再执行子类的构造方法 Son s=new Son(); } } |
运行一览:
【made by siwuxie095】
Java方法重写与super关键字的更多相关文章
- java方法重写和super关键字
//java方法重写和super关键字 //在继承中,其实就是子类定义了和父类同名的方法 //就是方法,属性都是相通的 //重写限制: //被子类重写的方法不能拥有比父类方法更加严格的权限 //sup ...
- Java面向对象之继承,方法重写,super关键字,员工类系列继承题
在程序中,如果想声明一个类继承另一个类,需要使用extends关键字. 格式: class 子类 extends 父类 {} 继承的好处 1.继承的出现提高了代码的复用性,提高软件开发效率. 2.继承 ...
- java方法重写的规定
java方法重写的规定: 方法的声明: 权限修饰符 返回值类型 方法名(形参列表) throws 异常的类型{ // 方法体 } 子类中的叫重写的方法, 父类中的叫被重写的方法 子类重写的方法的方法名 ...
- 在子类中,若要调用父类中被覆盖的方法,可以使用super关键字
在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. package text; class Parent { int x; public Parent() { ...
- Java方法重写
重写override 为什么要重写方法呢? 1:当父类中的方法无法满足子类需求时候,重写方法 2:当子类需要有特有的功能时候,重写方法. Java方法重载:在同一类中,出现多个方法名相同的方法,但是参 ...
- 乐字节Java继承|方法重写、super和final关键字
大家好,乐字节的小乐又来了,上一篇是:乐字节Java|JavaBean.继承与权限修饰,也是属于Java继承的,今天继续Java继承. 一. 方法的重写 父类不满足子类的要求,按需改写.注意 方法签名 ...
- java基础学习总结——super关键字
一.super关键字
- java的继承 和super关键字 构造器
面向对象的特性二继承: 继承的好处: 1.减少代码的冗余.提高了代码的复用性 2.便于功能的扩展 3.为之后多态的使用,提供了前提 继承的格式: class A extends B{} A:子类.派生 ...
- 重写、super关键字、final关键字、多态、子类型转换、抽象的初步了解
重写 含义 在Java中,子类可继承父类中的方法,而不需要重新编写相同的方法.但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写.方法重写又称方法覆盖. 重写与重载的 ...
随机推荐
- caddy server 了解
Caddy 是一个Go写的服务器软件,官方的宣传语“The HTTP/2 web server with automatic HTTPS”以及“Serve The Web Like It's 2016 ...
- ubuntu :安装skype聊天工具
如题,今天就想搞个软件在ubuntu能聊天,查一下skype,好像网上有人说不是每个安装包都用的了,skype-ubuntu-precise_4.2.0.13-1_i386.deb可以, 我在微盘下载 ...
- Java web 第一天
java web 的开发一般都是采用比较经典的分层结构: MVC(Model-View-Control)结构,在MVC 结构中,Model层用于处理业务相关,View层用于处理显示相关(View一般为 ...
- Netty--TCP粘包和拆包
TCP协议以流的方式进行数据传输,它无法理解其上层协议的数据意义,而是根据TCP缓冲区的大小对数据进行拆分或组装,即上层一个完整的包可能被拆为几个TCP包来发送,或上层几个包会被组合为一个TCP包发送 ...
- java web 程序---购物车选商品,购买,付款
思路:1.有一个单选按钮,让我们选择商品 2.购买的物品及 数量清算 3.付款 我的界面: home.jsp <body> <center> 选择您购买的商品 <br ...
- mysql命令之二:查看mysql版本的四种方法
1:在终端下:mysql -V. 以下是代码片段: [shengting@login ~]$ mysql -V mysql Ver 14.7 Distrib 4.1.10a, for redhat-l ...
- 查询mysql数据库启动时间抛异常
mysql 5.7.10使用dbforget Studio 连接异常 提示:The'INFORMATION_SCHEMA.SESSION_VARIABLES' feature is dis 查看mys ...
- C++ 新特性-右值引用
作为最重要的一项语言特性,右值引用(rvalue references)被引入到 C++0x中.我们可以通过操作符“&&”来声明一个右值引用,原先在C++中使用“&”操作符声明 ...
- ubuntu 12.04 配置-1
今天对ubuntu 12.04 系统进行了相关的配置,配置的主要内容有: 1)php + mysql + apache2 web开发环境的搭建: 2)vim的简单保存退出指令: 3)文件和文件夹权限的 ...
- nginx 代理http配置实例
#user nginx; worker_processes ; #error_log /var/log/nginx/error.log warn; #pid /var/run/nginx.pid; e ...