- 浏览: 18252 次
- 性别:
- 来自: 武汉
最新评论
在现实生活中,我们经常听到“继承”二字,这两字通常存在于父子之间。在Java中,继承是利用类与类之间的共同点建立起简化程序的一种方式,继承的类称为子类,被继承的类称为父类。
public class Fruit {
public String color ="";
public void plant(){
System.out.println("果树正在种植ing");
}
public void grow(){
System.out.println("果树正在生长ing");
}
public void harvest(){
System.out.println("果树已经收获......");
}
public Fruit(){
this("this调用有参构造方法");
System.out.println("无參给构造方法");
}
public Fruit(String color){
System.out.println("有参构造方法");
this.color=color;
}
public static void main(String[] args){
Fruit fruit=new Fruit();
fruit.grow();
fruit.plant();
fruit.harvest();
Apple apple=new Apple();
apple.plant();
System.out.println("color:"+apple.color);
}
}
public class Apple extends Fruit{
public String color ="red";
public void plant(){
System.out.println("苹果树正在种植ing");
}
}
在上面的两个类中,fruit是父类,apple是子类,子类继承了父类中所有的成员变量和成员方法,可以通过对象访问使用父类的非私有的变量和方法,对于私有的变量可以通过函数间接调用,而父类中的方法通常不会声明为私有的。
子类和父类之间还有一种重要的关系,那就是重写和覆盖。当子类中定义的变量与父类中定义的变量完全相同时,就会覆盖父类中的变量比如上例中的color,在父类中输出color是null,在子类中输出color是red。两者不同。方法重写就是子类与父类中的方法定义完全相同,但是方法体不同。如上例中plant方法,在子类中调用和在父类中调用,输出是不一样的。
爱思考的的人可能就会问,子类继承了父类,重写了父类的方法,那么在子类中能不能调用父类中被子类重写的方法或覆盖的变量呢?这就要说到super关键字和this关键字了。请听下回分解。
public class Fruit {
public String color ="";
public void plant(){
System.out.println("果树正在种植ing");
}
public void grow(){
System.out.println("果树正在生长ing");
}
public void harvest(){
System.out.println("果树已经收获......");
}
public Fruit(){
this("this调用有参构造方法");
System.out.println("无參给构造方法");
}
public Fruit(String color){
System.out.println("有参构造方法");
this.color=color;
}
public static void main(String[] args){
Fruit fruit=new Fruit();
fruit.grow();
fruit.plant();
fruit.harvest();
Apple apple=new Apple();
apple.plant();
System.out.println("color:"+apple.color);
}
}
public class Apple extends Fruit{
public String color ="red";
public void plant(){
System.out.println("苹果树正在种植ing");
}
}
在上面的两个类中,fruit是父类,apple是子类,子类继承了父类中所有的成员变量和成员方法,可以通过对象访问使用父类的非私有的变量和方法,对于私有的变量可以通过函数间接调用,而父类中的方法通常不会声明为私有的。
子类和父类之间还有一种重要的关系,那就是重写和覆盖。当子类中定义的变量与父类中定义的变量完全相同时,就会覆盖父类中的变量比如上例中的color,在父类中输出color是null,在子类中输出color是red。两者不同。方法重写就是子类与父类中的方法定义完全相同,但是方法体不同。如上例中plant方法,在子类中调用和在父类中调用,输出是不一样的。
爱思考的的人可能就会问,子类继承了父类,重写了父类的方法,那么在子类中能不能调用父类中被子类重写的方法或覆盖的变量呢?这就要说到super关键字和this关键字了。请听下回分解。
发表评论
-
浅谈hashtable
2015-05-02 13:44 0在学习编程中,我们都知道最基 ... -
Jlist的使用
2015-04-27 15:22 774以前对JList不大了解,只知 ... -
编写自定义窗体和组件
2015-04-27 11:51 713在学习java图形界面的时候,就想编 ... -
String,StringBuffer,StringBuilder
2015-04-26 17:24 404String一旦实例化,里面的 ... -
监听器原理
2015-04-26 13:15 570今天 ... -
JTable的使用
2015-04-26 11:23 705... -
java编程之集合框架
2015-01-09 23:27 663在写哈弗曼编码时,看到了优先队列, ... -
java编程之集合框架
2015-01-09 23:12 540我们知道集合 ... -
java编程之集合框架
2015-01-09 22:48 427java里面集合框架是比较重要的基础 ... -
java图形化用户界面
2014-11-15 23:03 575在前面我们实现了画一条直线,那么如何画 ... -
java编程基础之链表
2014-11-15 22:41 495数组查询速度虽然快,但插入删除不方便, ... -
java编程基础之数组队列
2014-11-15 22:14 447最常见的数据存储结构就是数组,数组 ... -
java网络通信
2014-10-20 22:44 418没接触通信编程之前,总觉得通信好神 ... -
java图形化用户界面
2014-10-20 21:57 444在前面的几篇博客中我们已近了解 ... -
java编程之多态性
2014-08-26 20:53 536[align=center][/align] 前面已经 ... -
java编程之接口
2014-08-25 21:58 428在前面我们已经讲过了抽象类和继承,今天就让我们来看 ... -
this和super关键字简析
2014-08-25 21:58 392在Java中,this通常指当前对象,su ... -
java编程的封装性之类对象2
2014-08-25 21:57 321这次直接开门见山吧,先看一下抽象类的定义 ... -
java编程的封装性之类对象1
2014-08-25 21:57 421[i][/i][color=yellow][/color] ... -
初识java
2014-08-22 11:35 414接触过编程语言的人都应该听过面向对象和面向过程 ...
相关推荐
在Java编程语言中,继承是面向对象特性之一,它允许我们创建一个类(子类或派生类)作为现有类(父类或基类)的扩展。这种设计模式有助于代码重用,使得子类可以继承父类的属性和方法,并且可以添加新的功能或覆盖已...
Java语言的类继承性和多态性是面向对象编程的核心特性,它们使得代码具有更好的复用性和灵活性。在Java中,类的继承性允许一个类(子类)从另一个类(父类)继承属性和方法,从而创建出一种"is-a"的关系。这意味着...
在Java编程语言中,继承是一种面向对象编程的重要特性,它允许一个类(子类或派生类)继承另一个类(父类或基类)的属性和方法。这有助于代码重用,减少冗余,并实现多态性。在这个特定的程序中,我们看到了一个关于...
《Java编程之道全本》是一本深入探讨Java编程精髓的书籍,旨在提升读者的逻辑思维能力,对于想要在编程领域深化理解的开发者来说,无疑是一本不可多得的读物。书中涵盖了Java语言的基础概念、核心特性以及高级应用,...
在Java编程语言中,继承是面向对象编程的一个核心特性,它允许一个类(子类或派生类)从另一个类(父类或基类)继承属性和行为。这个概念极大地提高了代码的重用性和模块化,使得我们可以构建复杂的类层次结构。在...
优质java课件 java程序设计教程(第6版)01.计算机系统概述(共42页).ppt 优质java课件 java程序设计教程(第6版)02.数据与表达式(共62页).ppt 优质java课件 java程序设计教程(第6版)03.使用类和对象(共49页...
在Java编程语言中,继承是面向对象特性的重要组成部分,它允许一个类(子类)从另一个类(父类)继承属性和方法。这种机制有助于代码重用和构建复杂的类层次结构。当我们谈论“java中与继承有关的程序内存分析”时,...
在java语言中,继承的使用非常广泛,几乎所有的java程序都使用了继承。 java类和对象继承多态性还涉及到多态性,多态性是java语言中的一种机制,它允许开发者使用同一个名字来表示不同的操作。多态性可以提高代码的...
理解类(Class)、对象(Object)、继承(Inheritance)、多态(Polymorphism)和封装(Encapsulation)等核心概念是Java编程的基础。 2. **类与对象**:类是创建对象的模板,描述了对象的属性和行为。对象则是类的...
继承性是面向对象编程的基本特性之一,指的是子类可以继承父类的成员变量和成员方法,实现代码的重用和提高开发效率。多态性是面向对象编程的另一个重要特性,指的是同一个方法可以根据不同的对象实例产生不同的结果...
在Java编程语言中,继承是面向对象特性的一个重要组成部分,它允许一个类(子类或派生类)从另一个类(父类或基类)继承属性和行为。这个概念极大地提高了代码的重用性,降低了软件开发的复杂度。在这个"Java继承...
Java编程是目前世界上最流行的编程语言之一,广泛应用于企业级应用开发、移动应用、Web应用等各个领域。Java语言之所以能够得到如此广泛的应用,主要得益于其众多独特的优势和特点。 首先,Java语言是一种面向对象...
Java面向对象编程的核心概念之一是继承性和多态性。继承性允许子类继承父类的属性和行为,以此实现代码的复用和类的层次结构。在Java中,所有类都默认继承自`java.lang.Object`类。创建派生类(子类)时,可以使用`...
Java继承和多态的程序设计 本节课我们将学习使用Java语言编写的有关继承和多态的程序设计。这个程序旨在帮助初学者更好地理解Java中的继承和多态机制。 继承是Java语言中的一种机制,它允许一个类继承另一个类的...
在本实验报告中,我们将深入探讨Java编程中的两个核心概念:类的继承和多态的应用。实验主要目标是加深对抽象类和抽象方法的理解,并掌握如何在实际编码中实现类的继承以及多态性。 首先,让我们理解抽象类和抽象...
在“java编程基础”部分,会详细介绍如何编写和运行Java程序,包括JDK的安装、环境变量配置,以及使用IDE(如Eclipse、IntelliJ IDEA)进行开发。此外,还会讲解面向对象编程(OOP)的基本原则,如封装、继承和多态...
Java继承是面向对象编程中的一个核心概念,它允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现代码的重用和...同时,了解和实践继承与多态、接口、抽象类等概念的结合,将有助于提升你的Java编程技能。
在Java编程语言中,类的封装、多态和继承是面向对象编程的三大核心特性。这些概念为软件开发提供了强大的抽象能力和代码复用机制,使得程序设计更加灵活、高效。 ### 一、类的封装 封装是面向对象编程的基础,它将...
Java编程基础是编程学习的重要部分,它为初学者提供了进入这个广泛应用的编程世界的入口。Java是由Sun Microsystems(后被Oracle收购)开发的一种面向对象的、跨平台的编程语言,其设计目标是“一次编写,到处运行”...