`
lisijie0616
  • 浏览: 3427 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论

java基础:类的继承

    博客分类:
  • java
阅读更多

一、引言:

       若我们定义了一个“学生”类,现在又想定义一个“大学生”类,而大学生与学生有重合的属性和方法,比如说都有姓名、学号、学分、学习方法等,那么我们在定义“大学生”类时,需要再重复编写一遍“学生”类里面已有的代码吗?这显然是不科学的,这时候我们就需要用到类的继承。

 

二、定义:

       在已有类的基础上建立新的类,而不需要把已有类的内容重新写一遍,这就叫做类的继承。已有的类叫做父类,在此基础上建立的类叫做子类。在上面的例子中,学生就是父类,大学生就是子类。

       代码关键字:extend

 

三、继承的内容:

       那么子类从父类中继承了一些什么呢?这一点需要分情况讨论:

       对于private的属性、方法,子类能够继承到,但是不能够访问。

       对于非private属性、方法,子类能够继承并且访问。

       例如:

//定义父类
public class Students {
        private String name;

        public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}

        public void study(){
		System.out.println("学生名字是"+name);
        }     
}

 

 

 

//定义子类
public class UNstudents extends Students {
}

 

 

 

//定义管理类
public class Manager {
public static void main(String[] args) {
		UNstudents un=new UNstudents();
	 	Students stu=new Students();
		stu.setName("张三");		
 
                un.study();
                }
}

 

 

运行结果为:

 

学生名字是null

 

 

从结果我们可以看出,子类继承并访问到了父类的public学习方法study,但是没有访问到父类的private姓名张三,实际上它还是继承了父类的姓名的,只不过private属性只能自己的类访问,其他的类都不可以访问。

△.这里我们若要显示姓名,只需要把管理类的stu.setName("张三")改成UN.setName("张三")即可。

 

四、方法的重写

      儿子能从父亲身上继承很多东西,但他不可能完完全全和父亲一样,那不就成了克隆了,所以儿子也会有自己的个性。

      当子类继承父类之后,如果要加上自己特有的方法、属性,就需要用到重写。

      例如:

 

//定义父类
public class Students {
        public String name;

        public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}

        public void study(){
		System.out.println("学生名字是"+name);
        }     
}

 

 

//定义子类
public class UNstudents extends Students {
         public void study(){
         System.out.println(name+"是大学生,需要考四级");
         }
}

 

//定义管理类
public class Manager {
public static void main(String[] args) {
		UNstudents un=new UNstudents();
		un.setName("张三");		
 
                un.study();
                }
}

 

运行结果为:

张三是大学生,需要考四级

 

从结果我们可以看出,我们在子类中重新定义了study这个方法,输出结果也为子类的study方法,即是子类的特色方法,这就是方法的重写。

 

△.重载与重写的区别:

     重写是发生在继承体系下的,子类针对父类的方法、属性进行的重写。也就是发生在不同的类下面。

     重载是发生在本类下面的,针对同一个方法的方法名一致),只有形参的个数、顺序、类型的区别。  

 

 

 

 

2
1
分享到:
评论

相关推荐

    Java基础知识:类和对象

    Java基础知识:类和对象 Java 编程语言中,类和对象是核心概念。理解类和对象的概念对于掌握 Java 编程至关重要。本文将详细介绍 Java 中类和对象的概念、定义和使用方法,并提供相关示例代码,帮助读者深入了解和...

    java基础类与继承.ppt

    Java中的类与继承是面向对象编程(Object-Oriented Programming, OOP)的核心概念,它们在构建复杂的软件系统中起到至关重要的作用。面向对象编程是一种编程范式,它基于对象和类的概念,通过继承、封装和多态等特性...

    Java基础:面向对象基础

    Java基础之面向对象基础,正是引导初学者了解和掌握面向对象思想的入门课程。 在Java中,一切皆为对象,这意味着Java语言将数据表示为对象,并且每个对象都属于一个特定的类。类是创建对象的模板,它定义了对象将...

    java 类的继承 基础理解

    Java 类的继承基础理解 Java 语言中的继承机制允许一个类继承另一个类的属性和行为,实现代码的重用和继承关系建模。在 Java 中,继承是通过使用 `extends` 关键字来实现的,格式为 `public 子类 extends 父类{}`。...

    Java--类的继承

    2. 为什么需要继承: 继承主要解决的问题是代码重复和软件设计的模块化。在现实世界中,许多对象具有相似的特征和行为。通过继承,我们可以创建一个基础类,包含共有的属性和方法,然后根据需要创建更具体的子类,...

    java基础继承封装多态

    本资源摘要信息将对 Java 基础知识点进行总结,涵盖继承、封装、多态等概念,并对面向对象的设计、数据库设计模式等进行讲解。 继承 继承是 Java 中的一种机制,允许一个类继承另一个类的属性和方法。继承的语法是...

    【Java编程语言】基于extends和implements关键字的类与接口继承机制详解:单一继承与多继承接口实现分析

    适合人群:具有一定Java编程基础的学习者或开发者,尤其是对面向对象编程中的继承概念需要深入理解的人群。 使用场景及目标:①理解Java中类与类之间的继承关系以及接口实现机制;②掌握`extends`和`implements`...

    java类的继承实例

    Java 类的继承是其面向对象特性中的核心概念之一,它为代码重用和构建复杂的软件结构提供了基础。在 Java 中,一个类可以扩展另一个类的功能,这个被扩展的类被称为父类(或超类),而扩展的类则称为子类(或派生类...

    Java 基础类的继承与覆盖

    当我们谈论“Java基础类的继承与覆盖”,我们关注的是如何通过继承来创建新类,并如何覆盖或重定义父类中的方法。 首先,让我们讨论如何创建一个继承关系。在Java中,我们使用关键字`extends`来声明一个类是另一个...

    Java基础教程之继承详解

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

    完整版Java全套入门培训课件 Java基础 04-继承下(共28页).pptx

    Java编程语言中的继承是面向对象设计的一个核心特性,它允许创建一个类(子类)从另一个类(父类)继承属性和方法。本篇培训课件主要探讨了继承的下半部分,聚焦在抽象类和接口这两个重要概念。 **抽象类**在Java中...

    Java基础实例:关于对象和类的源代码.rar

    通过这个"Java基础实例:关于对象和类的源代码"压缩包,你可以学习到如何声明和定义类,如何创建和使用对象,以及如何利用继承和多态性来扩展类的功能。这些基础知识对于任何Java初学者来说都是至关重要的,它们将...

    Java 类和继承相关代码集

    Java 类和继承是面向对象编程的核心概念,它们构成了Java程序设计的基础。在这个代码集中,我们很显然会看到一系列关于如何创建和使用Java类以及实现继承的示例代码。以下是对这些概念的详细解释: 1. **Java 类**...

    Java基础思维导图xmind格式

    本资源是一份精心整理的Java基础思维导图,旨在帮助初学者及进阶学习者系统地掌握Java编程语言的核心知识。通过直观的图形化展示,该思维导图涵盖了Java语言的基础语法、面向对象编程、异常处理、集合框架、IO流、多...

    java实验三 类的继承--圆.rar

    在Java编程语言中,类的继承是面向对象编程的一个核心概念。这个"java实验三 类的继承--圆.rar"文件显然包含了一个关于如何在Java中实现类继承的实验项目,涵盖了实验代码、实验报告、心得体会以及相关的习题解答。...

    Java基础知识点总结.docx

    2. 继承:一个类可以从已有的类派生,继承其属性和行为,实现代码复用。 3. 接口:定义一组方法,不包含实现,用于多个类之间进行约定,实现多继承。 4. 多态:同一消息可以由不同对象响应,实现代码灵活性。 四、...

    Java基础知识:封装和集成

    Java 基础知识:封装和继承 Java 是一种面向对象的编程语言,封装和继承是面向对象编程的两个重要概念。本文将详细介绍 Java 中的封装和继承的概念、原理和用法,并提供示例代码帮助读者更好地理解和应用这两个概念...

    Java程序基础--继承的概念和分类.pptx

    java

Global site tag (gtag.js) - Google Analytics