`
汤小润
  • 浏览: 3829 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论
阅读更多

一.Java中类继承的关键字:extends

(1)例如,新建一个学生类

public class Student{

private String name;

public String getName() {

return name;

}

 

public void setName(String name) {

this.name = name;

}

}

 

//再新建一个大学生类,即可以继承自学生类

public class UNStudent extends Student{

  }           //子类会继承父类中所有的方法和属性,当私有的不可以直接调用

//也就是说,当父类的限定符为public,protected和默认时,均可以直接继承

 

(2)注意!! 当父类自己定义了带参数的构造方法,那么在子类的构造方法中一定要自己调用一下!

public class Student{

private String name;

 

public Student(String name){

this.name = name;

}

}

 

public class UNStudent extends Student{

         public Student(String name){      //在子类中, 必须再次写带参数的构造方法。

                 super("");              //若父类中仅有一个无参数的构造方法,那么不必再在子类中写构造方法

}

 

二.Java子类中方法的重写

    有时候子类中要求有与父类相同的方法,但是实现的功能不同,这时候就要用到方法的重写

    方法重写的要求:返回值类型、方法名以及参数类型都必须与父类相同

例如,学生都有其学习方法

public class Student{

public void study(){

System.out.println("父类的学习方法!");

}

}

 

但是大学生的学习方法会和中学生或者小学生的不同,因此子类的方法就必须各自重写

public class UNStudent extends Student{

public void study(){

System.out.println("大学生类的学习方法!");

}

}

 

//注意!!子类对方法重写后,其访问修饰符的权限必须大于等于父类!

//Java的访问修饰符权限的顺序依次为 public>protected> (default)> private

//当父类方法的限定符为public时,子类必须为public

 

三.Java中类的自动转型和强制转型

我们用一段代码来解释自动转型和强制转型

 

public class Main {

public static void main(String[] args) {

Student un  = new UNStudent();

  //这行代码即为自动转型,注意我们创建的是一个学生对象,但是在new后面调用的是子类的方法

un.study();  //自动转型后子类不可以调用自己特有的方法,只能调用重写过的代码

 

//当需要调用子类中自己特有的方法时,需要实行强制转型,方法如下(类似于数据类型的强制转换)

UNStudent uns = (UNStudent)un;    

uns.demo();  //此demo()方法是大学生类自己特有的,在父类中不存在

 

四.关于父类和子类对象的调用

比如新建一个老师类

public class Teacher {

public void teach(Student s){    //需要传人一个学生对象

s.study();

}

}

 

//并新建一个老师对象

Teacher t = new Teacher();

 

//当老师调用自己的方法时,传入的对象要求为Student类

t.teach(st);  //注意,此时传入的既可以为Student类的对象,也可以传入Student所有子类的对象

//也就是说,在类的继承中,所有类要实现某个方法,只需调用同一个方法名

 

五.总结

    Java中利用继承机制将类一级一级联系起来,学好继承是后面学好Java的基础,一定要注意Java中继承的声明和使用。

分享到:
评论

相关推荐

    java类的继承详解说明

    Java 类的继承详解说明 Java语言中,继承是面向对象编程的三大特征之一,是一种实现代码复用的机制。它允许一个类继承另一个类的成员变量和方法,从而实现代码的重用和扩展。 继承的定义 继承是指一个类继承另一...

    Java面向对象之继承练习题.doc

    1. **类的继承**:在Java中,继承是面向对象编程的重要特性,允许一个类(子类)继承另一个类(父类)的属性和方法。例如,我们可以创建一个`Music`类作为其他音乐相关类的基类。 2. **构造方法**:构造方法用于...

    Java基础教程之继承详解

    Java中的继承是面向对象编程的一个核心特性,它允许一个类(子类或衍生类)从另一个类(父类或基类)中继承属性和行为,从而实现代码的重用和扩展。这种机制使得子类可以复用基类的公共功能,同时保留自己的独特功能...

    Java集合类详解总结

    ### Java集合类详解总结 在Java编程中,集合框架(Collection Framework)是处理一组对象的强大工具,它提供了标准的数据结构来存储和操作这些对象。Java集合框架主要包括`Collection`、`Set`、`List`、`Queue`、`...

    详解java接口、继承和多态

    ### 详解Java接口、继承和多态 #### 一、Java接口 在Java中,接口是一种定义行为的方式,它提供了一种实现抽象方法的手段。通过接口,开发人员可以为类定义一组方法签名,但不提供这些方法的具体实现。这有助于...

    Java的继承机制详解

    Java的继承机制是面向对象编程中的核心特性,它允许一个类(子类)从另一个类(父类)继承属性和方法,从而实现代码的复用和扩展。在Java中,继承具有以下特点: 1. 单继承:不同于C++等语言,Java仅支持单继承,即...

    java内部类详解

    Java 内部类详解 Java 内部类是一种高级特性,允许在一个类的定义内部创建另一个类。这种设计模式提供了更灵活的代码组织方式,同时还可以实现特定的封装和访问控制。内部类主要分为四种类型:静态内部类、成员内部...

    java 异常详解,java异常分类,创建自己的异常

    Java 异常详解 Java 异常是指在程序运行中出现的违背指定正常流向的事件。异常可以分为两大类:-checked 异常和 unchecked 异常。Checked 异常必须在编译时捕捉并处理,而 unchecked 异常可以在编译时忽略,但是在...

    java继承例题

    Java继承机制详解 Java继承是面向对象编程(OOP)的一种机制,允许一个类继承另一个类的成员变量和成员方法。通过继承,可以实现代码的重用和扩展。 在Java中,继承是通过使用关键字`extends`来实现的。例如,`...

    Java继承(超详解)

    Java继承是面向对象编程的一个核心特性,它允许一个类(称为子类或派生类)继承另一个类(称为父类或基类)的属性和方法。这种机制使得代码的复用性和扩展性大大增强,降低了软件开发的复杂度。本文将深入探讨Java中...

    java内部类应用详解

    Java内部类是Java语言中一个独特且强大的特性,它允许我们在一个类的内部定义另一个类。内部类可以作为外部类的成员,具有访问外部类的所有域的权限,无论是public、protected还是private。这种访问能力使得内部类能...

    Java类与对象详解PPT课件.pptx

    Java类与对象详解是Java编程语言的基础知识,本节将详细介绍Java类和对象的定义、实例化、成员变量、构造方法、访问修饰符、继承等知识点。 一、Java类的定义和实例化 在Java中,类是创建对象的模板,类必须先...

    Java2编程详解.rar

    在这个压缩包中,包含了一个名为"Java2编程详解.pdf"的PDF文件,这很可能是书籍的扫描版,允许用户免积分下载阅读。 Java2,也被称为Java 2平台标准版(J2SE),是Java开发的一个关键版本,引入了许多重要的改进...

    Java_IO流详解

    Java_IO流详解 Java 的核心库 java.io 提供了全面的 IO 接口,包括文件读写、标准设备输出等。Java 中 IO 是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。在项目开发中,IO 是非常...

    Java中抽象类和接口的区别与作用详解

    ### Java中抽象类和接口的区别与作用详解 #### 一、引言 在Java编程语言中,`abstract class`和`interface`是两种用于定义抽象类的重要机制。这两种机制不仅支持了Java的强大面向对象特性,而且也在实际开发过程中...

    Java集合详解,详细讲解java的集合类

    在Java中,集合主要分为两大类:Collection和Map。本文将深入讲解Java集合类,特别是Collection接口和其下的List、Set,以及Map接口中的几个重要实现类。 首先,我们来看Collection接口。Collection是最基本的集合...

    Java基础入门编程详解

    11. **异常处理**:Java中的异常处理机制允许程序员优雅地处理错误情况。通过try-catch-finally语句块,可以捕获并处理可能出现的异常。 12. **输入输出(I/O)**:Java的I/O流系统用于读写文件、网络通信等。学会...

    Java面试题答案详解.rar

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。..."Java面试题答案详解"这份资源将涵盖以上所有知识点,并提供具体的问题和解答,帮助求职者在面试中表现出色,提升自己的Java技能水平。

    Java2编程详解(Special_Edition_Using_Java)

    OOP涉及类的继承、封装和多态性,通过实例解释如何设计和实现复杂的系统。此外,还会讲解如何使用异常处理来增强代码的健壮性,以及如何利用Java的内置集合框架如ArrayList、HashMap等进行数据管理。 在Java2平台上...

Global site tag (gtag.js) - Google Analytics