`
android2116
  • 浏览: 14484 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JAVA中子类实例化过程中super和this的使用

阅读更多

用代码直观理解子类实例化过程。

1、注意其中super和this关键字的使用。

2、分别对第7,8,9行代码进行注释后运行,观察运行结果。

3、对第45行代码进行取消注释,观察运行结果。

4、注意第51行和第52行代码中this关键字的不同使用方式。

5、源代码不动,注释掉父类中Father()构造方法(第22~25行代码),观察运行结果,并看父类构造函数的注释语句。

 

class ExtendsDemo 
{

	public static void main( String[] args )
	{
		
		Son s = new Son();
		//Son s1 = new Son( 110 );
		//Son s2 = new Son( 1, 2 );
		//s.speak();

	}//end of method main

}//end of class ExtendsDemo

class Father
{

	String name;
	int age;

	Father( ) //此构造函数可以被子类隐式调用
	{
		System.out.println( "Father( ) is run" );
	}//end of method Father

	Father( int x )//如果只有此构造函数,在子类中只能手动调用
	{
		System.out.println( "Father( int x ) is run:" );

	}//end of method Father

	void speak()
	{
		System.out.println( "I am father!" );
	}//end of method speak

}//end of class Father

class Son extends Father
{

	Son()
	{
		//super( 2116 );
		System.out.println( "Son() is run" );
	}//end of method Son 

	Son( int x )
	{
		this();
		this.speak();//该句在此为打酱油,为表示this调用构造方法和一般方法的不同语法
		System.out.println( "Son( int x ) is run" );

	}//end of method Son

	Son( int x, int y )
	{
	
		this( x );
		System.out.println( "on( int x, int y ) is run" );

	}//end of method Son

	void speak()
	{
		System.out.println( "I am Son!" );
	}//end of method speak

}//end of class Son

 

0
4
分享到:
评论

相关推荐

    Java4Android 19_子类实例化过程

    下面将详细阐述Java中子类实例化的过程及其相关知识点。 首先,子类实例化时会先调用父类的构造器。这是因为子类继承了父类的属性和方法,所以在创建子类对象时,必须确保父类的数据成员被正确初始化。这是通过隐式...

    Java中子类.pdf

    Java中子类 Java语言中的子类是指继承父类的类,子类继承父类的所有状态和行为,可以修改父类的状态或覆盖父类的行为,并添加新的状态和行为。子类的创建是通过使用extends关键词来指示所继承的父类。 子类的特点...

    Java中子类对象的特点测试代码清单.pdf

    以下是对标题“Java中子类对象的特点测试代码清单”和描述中的内容进行的详细解释。 首先,子类是父类的扩展,它能够继承父类的非私有属性和方法。在给出的代码示例中,`Chinese` 类是 `People` 类的子类,这表明 `...

    易语言类中子类化

    在提供的压缩包文件"易语言类中子类化源码"中,我们可以找到使用易语言实现的类中子类化的具体示例代码。这些源码将帮助我们理解如何在易语言环境中实现子类化,以及如何利用WinProc、CallWindowProc、SetWindowLong...

    java 子类对象赋值给父类对象的使用

    通过以上讨论,我们可以看到,Java中子类对象赋值给父类对象是一种强大且灵活的设计模式,它允许我们在代码中使用抽象的父类引用,从而简化编程,增加代码的通用性和可维护性。在实际项目中,合理利用这一特性,能够...

    易语言源码易语言类中子类化源码.rar

    易语言源码易语言类中子类化源码.rar 易语言源码易语言类中子类化源码.rar 易语言源码易语言类中子类化源码.rar 易语言源码易语言类中子类化源码.rar 易语言源码易语言类中子类化源码.rar 易语言源码易语言类...

    Java类库 java中常用的类 可以参考

    - `ObjectInputStream` 和 `ObjectOutputStream`:用于对象的序列化和反序列化。 ##### 5. `java.lang.*` - **主要功能**:Java 编程语言的基本类库。 - **关键类**: - `String`:用于处理字符串。 - `Object`...

    Java序列化中子类、父类构造函数问题实例分析

    本文主要介绍了Java序列化中子类、父类构造函数问题,结合实例形式分析了java父类与子类构造函数中序列化接口调用相关操作技巧与使用注意事项。 一、序列化接口的实现 在Java中,如果父类实现了序列化接口,那么其...

    Java中子类和父类之间的调用关系

    - `this`关键字用于引用当前对象的实例,可以用来调用本类中的其他构造器或者访问本类的成员变量和方法。 - `super`关键字则用于引用父类的对象,主要用于调用父类的成员变量或方法,尤其是当子类重写了父类的方法...

    类中子类化.e

    1.领取任务; 2.在页面http://u.download.csdn.net/upload,上传你认为的最优的资源(设置为0分的资源,将获得更多下载量,创建专辑可获得更多关注); 3.在上传的完成页面中,找到答案; 4.完成任务。

    java基础String类选择题练习题

    根据提供的信息,我们可以总结出这份Java基础String类选择题练习题主要聚焦于String及StringBuffer类的使用。尽管具体的题目内容未给出,但从所展示的信息中可以推断出该练习题集涵盖了以下几方面的知识点: ### 一...

    java基础知识学习教程-7面向对象.pptx

    成员内部类可以直接使用外部类的所有属性和方法,静态内部类不依赖于外部类,局部内部类的实例化只能在方法中进行,匿名内部类一般用于继承其它类或是实现接口。 Lambda表达式是JDK 1.8后开始的新特性,允许把函数...

    Java程序设计总复习题库及答案.pdf

    - Java区分大小写,程序中使用的关键字和保留字必须符合Java语言规范。 2. 输入输出与基本操作 - System.out.print()和System.out.println()用于控制台输出,前者不换行,后者换行。 - Java中所有类的根类是...

    java复习资料

    Java虚拟机会自动导入**A.java.lang**包中的类,这意味着无需显式导入这些类即可直接使用。 #### 二十一、Java继承关系 - **知识点**: 选择题21考查Java中子类与父类的关系。子类可以从父类继承成员,并可以重新...

    java中子类继承父类,程序运行顺序的深入分析

    在Java编程语言中,子类继承父类是一种常见的面向对象特性,它允许子类获取父类的属性和方法,并且可以进行扩展或覆盖。本文将深入分析Java中子类继承父类时的程序运行顺序,这对于理解面向对象编程的执行机制至关...

    c++中子类对象不能调用父类中的虚函数

    在C++编程语言中,`指针`和`引用`是两种非常关键的特性,它们在内存管理和对象操作中起到核心作用。同时,`虚函数`是实现多态性的重要机制,这对于面向对象编程至关重要。然而,有一个重要的概念是:子类对象不能...

    Java大一期末试卷含答案.doc

    Java大一期末试卷主要涵盖了Java语言的基础概念和核心特性,包括类、对象、继承、封装、多态、线程、I/O流、GUI组件、事件监听以及数据库访问等知识点。以下是对这些知识点的详细解释: 1. **访问控制符**: - `...

    90个高质量的java问答.pdf

    Java 中子类和父类构造器的使用 - **构造器调用顺序**:理解构造器链式调用的过程,包括如何使用 `super()` 调用父类构造器。 - **this 和 super 的区别**:区分 `this()` 和 `super()` 的使用场景。 - **实例化...

    Java中子类调用父类构造方法的问题分析

    本篇文章介绍了,Java中子类调用父类构造方法的问题分析。需要的朋友参考下

Global site tag (gtag.js) - Google Analytics