java之路 super

 1 /*
 2 super关键字:
 3
 4 super关键字代表了父类空间的引用。
 5
 6 super关键字的 作用:
 7 1. 子父类存在着同名的成员时,在子类中默认是访问子类的成员,可以通过super关键字指定访问父类的成员。
 8 2. 创建子类对象时,默认会先调用父类无参的构造方法,可以通过super关键字指定调用父类的构造方法。
 9
10 super关键字调用父类构造方法要注意的事项:
11 1. 如果在子类的构造方法上没有指定调用父类的构造方法,那么java编译器会在子类的构造方法上面加上super()语句。
12 2. super关键字调用父类的构造函数时,该语句必须要是子类构造函数中的第一个语句。
13 3. super与this关键字不能同时出现在同一个构造函数中调用其他的构造函数。因为两个语句都需要第一个语句。
14
15
16 super关键字与this关键字的区别:
17 1. 代表的事物不一致。
18 1. super关键字代表的是父类空间的引用。
19 2. this关键字代表的是所属函数的调用者对象。
20 2. 使用前提不一致。
21 1. super关键字必须要有继承关系才能使用。
22 2. this关键字不需要存在继承关系也可使用。
23 3. 调用构造函数的区别:
24 1. super关键字是调用父类的构造函数。
25 2. this关键字是调用本类的构造函数。
26 */
27 class Fu{
28
29 int x = 10;
30
31 String name;
32
33
34 public Fu(){
35 System.out.println("Fu类无参的构造方法..");
36 }
37
38 public Fu(String name){
39 this.name = name;
40 System.out.println("Fu类带参的构造方法..");
41 }
42
43
44 public void eat(){
45 System.out.println("小头爸爸吃番薯..");
46 }
47 }
48
49
50 class Zi extends Fu{
51
52 int x = 20;
53
54 int num;
55
56 public Zi(String name,int num){
57 super(name); //指定调用了父类带参的 构造方法...
58 this(); // 调用本类无参构造方法..
59 //super(); //指定调用了父类无参构造方法。。。
60 System.out.println("Zi类带参的构造方法..");
61 }
62
63 public Zi(){
64 System.out.println("Zi类无参的构造方法..");
65 }
66
67
68 public void print(){
69 System.out.println("x = " +super.x);
70 }
71
72 public void eat(){
73 System.out.println("大头儿子吃龙虾..");
74 }
75 }
76
77 class Demo9 {
78
79 public static void main(String[] args)
80 {
81 Zi z = new Zi("狗娃");
82
83
84 }
85 }
时间: 2024-08-07 04:32:15

java之路 super的相关文章

学java教程之super关键词

学编程吧学java教程之super关键词教程发布了,欢迎大家通过xuebiancheng8.com来访问. 前面一次课分析了this关键词的用法,this关键词主要有两个作用,第一个作用是访问当前对象的构造方法,第二个作用是访问当前对象的构造方法,其实super和this关键词的作用相似,super的作用有访问父类的构造方法,第二个作用访问父类的属性和方法. 下面我们来分析super关键词的作用.先来看一个例子 public class Person{ private String userna

Java之路 ——初识Eclipse

零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前言 俗话说,工欲善其事,必先利其器.在<Java之路--环境配置与编译运行>一章中,我们已经通过记事本,开始了我们的第一个Java程序.在文章,我们了解到要运行一个Java程序,并不是单单的在一个类中运行,可能会引用到别的类,引用到别的Jar包.简单的时候,项目引用一个两个jar包就可以了,但大多

Java中的super关键字

简单说一下Java中的super关键字. super关键字的用法源自于Java的三大特性之一的继承.也就是说有了继承,才有了super关键字. super的英文基本意思是"超".在Java中也是这么理解的,super代表的就是超类的意思.而我们习惯 上把超类叫做父类. super主要有两种用法. 一是:调用父类构造方法 二是:调用父类的属性和一般方法 下面简单的对两种用法进行介绍 =====================================================

java之路的开启

去年大学要毕业的时候,同学都急着找工作,可是我不急,那时候十分迷茫,不知道毕业之后能干嘛,自己的兴趣是什么. 忘了说,我是网络工程毕业的,近几年互联网的升温使得这专业还算可以的. 我和舍友依旧在玩lol,仿佛时间一直停留着,可是毕业的时间还是来临了,答辩之后,各奔东西. 我也从校园里走了出来,我开始找工作. 58同城,赶集网,人才市场到处找关于专业的工作,可是我不感兴趣. 好不容易去面试了一家,说是电话推销的:另外一家等同于公司网管. 其实我也没有找几家,家里也不是那么的着急. 忘了说我大四干嘛

Java之路——环境配置与编译运行

本文大纲 一.开篇 二.JDK下载 三.JDK安装 四.环境配置 五.初识Java编译 六.Java与Javac 七.第一个Java程序 八.总结 九.参考资料 一.开篇 通过对之前Java之路的了解之后,相信初学者们都对Java有了一个比较深印象的了解了.但是事情不能总停留在理论层面,还得多多实现,才能见真知.我觉得,学习一样东西,要遵循理论--实践--理论这样一个套路.先了解事情的基本概念,弄懂基本概念后,要想方设法的用到生活的点点滴滴上,这样能加深理论的记忆以及发现自己的盲点.在重复的实践

Java关键字(六)——super

在 Java关键字(五)——this 中我们说 this 关键字是表示当前对象的引用.而 Java 中的 super 关键字则是表示 父类对象的引用. 我们分析这句话“父类对象的引用”,那说明我们使用的时候只能在子类中使用,既然是对象的引用,那么我们也可以用来调用成员属性以及成员方法,当然了,这里的 super 关键字还能够调用父类的构造方法.具体有如下几种用法: 1.调用父类的构造方法 Java中的继承大家都应该了解,子类继承父类,我们是能够用子类的对象调用父类的属性和方法的,我们知道属性和方

java中关键字super

super关键字的作用 java中的super关键字是一个引用变量,用于引用父类对象.关键字“super”以继承的概念出现在类中. 主要用于以下情况:1.调用父类的方法   2.调用父类的变量  3.调用父类的构造方法 1.调用父类的方法 当我们要调用父类方法时使用.父类和子类都具有相同的命名方法,那么为了解决歧义,我们使用super关键字.这段代码有助于理解super关键字的使用情况. /* Base class Person */ class Person { void message()

java基础-关键词super与this

转发:itbooks this是调用自己本身的构造函数,而super是调用父类中的构造函数. 这两个关键词是用在构造函数中的,这两个关键词的设计也是对封装特性的一种考虑,避免编写不必要的重复代码. class Animal{ //定义构造函数,要求子类必须初始化名字 Animal(String _name){ this.name=_name; } //动物名字 private String name; void showName(){ System.out.println(name); } }

java 构造方法中super()的作用?

手贱百度了一下 :java里面自定义类的有参构造方法为什么不用super() 举个例子: class Father { Father(){print ('father');}; } class Son { Son(){print ('son')}; } 如果只是这样,那么构造Son之前会在后台调用一下super()函数,调用过程你看不到,但是确实执行了,结果是先father后son但是这种时候你显示的写个super就没有意义了,那么他在什么时候用呢,再举个例子 给你举个例子 class Fath