java回顾之继承

继承

extends是拓展的意思,而不是继承。即子类是父类的拓展,子类是一种特殊的父类。(子类不能继承构造器)

继承父类例如

class Fruit
{
 	public String name;
 	public void info()
 	{
 		System.out.println("名字叫"+name+"好吃");
 	}
}
class Apple extends Fruit
{
	public static void main(String[] args)
	{
		Apple apple=new Apple();
		apple.name="apple";
		apple.info();
	}
}

  很好理解

重写父类方法

class banana extends Fruit
{
	public void info()
	{
		System.out.println("名字叫"+name+"不好吃");
	}
}名字叫香蕉不好吃

  此事执行的就不是父类的info方法了,即子类覆盖了父类的方法,也叫方法重写Override

重写方法遵循“两同两小一大”

两同:方法名,形参列表

两小:返回值比父类返回值类型要小或者相等,异常规格要小或者相等

一大:子类的访问权限要比父类大或者相等

子类重写后,无法访问父类被隐藏的方法,不过可以使用“super”关键词或者使用“父类类名”调用被隐藏的方法。

class banana extends Fruit
{
	public void info()
	{
		System.out.println("名字叫"+name+"不好吃");
	}
	public void callSuper()
	{
		super.info();
	}
	public static void main(String[] args)
	{
		banana b=new banana();
		b.name="香蕉";
		b.info();
	   b.callSuper();
	}
}名字叫香蕉好吃

  

如果父类的方法为private,则不叫重写,叫新方法

时间: 2024-10-30 14:13:42

java回顾之继承的相关文章

java回顾之继承 二

调用父类构造器 子类不会获得父类构造器,但是子类构造器里面可以调用父类构造器初始化代码类似于一个构造器调用另外一个构造器: public class Box { String name; String color; String weight; public Box(String name,String color) { this.name=name; this.color=color; } public Box(String name,String color,String weight) {

Java回顾之Spring基础

第一篇:Java回顾之I/O 第二篇:Java回顾之网络通信 第三篇:Java回顾之多线程 第四篇:Java回顾之多线程同步 第五篇:Java回顾之集合 第六篇:Java回顾之序列化 第七篇:Java回顾之反射 第八篇:Java回顾之一些基础概念 第九篇:Java回顾之JDBC 第十篇:Java回顾之ORM框架 我计划分两到三篇文章来描述Spring,这一篇主要讲Spring一些基础的内容. 概述 我印象4.5年前,我还做java开发的时候,Spring是一个非常火的框架,尤其是在Web开发领域

JAVA中的继承

1.什么是继承 基于一个已存在的类,创建一个新的类.已存在的类即父类,新的类即子类,继承就是子类继承并拥有父类的属性和方法,同时,子类还有拥有父类所不具有的属性和方法. 父类,也称为基类.超类(superclass):子类,也称为派生类. 2.JAVA中"继承"的特点 JAVA中一个类只能继承一个父类.不像C++等语言那样,可以继承多个类.这也是JAVA比较容易学的一方面 只能继承父类中非private成员属性和方法,private是父类所特有的不能继承 3.JAVA中的"继

java中子类继承

[[email protected] java]# vim Ostrich.java //注意文件名必须是这个,因为下面代码中只有Ostrich是public修饰符.我们要明白public的含义 class Bird { public void Fly() { System.out.println("I am bird I can fly"); } } public class Ostrich extends Bird { public void Fly() { System.out.

Java中的继承、封装、多态的理解

Java中的继承.封装.多态 继承的理解: 1.继承是面向对象的三大特征之一,也是实现代码复用的重要手段.Java的继承具有单继承的特点,每个子类只有一个直接父类. 2.Java的继承通过extends关键字来实现,实现继承的类被称为子类,被继承的类称为父类(有的也称其为基类.超类),父类和子类的关系,是一种一般和特殊的关系.就像是水果和苹果的关系,苹果继承了水果,苹果是水果的子类,水果是苹果的父类,则苹果是一种特殊的水果. 3.Java使用extends作为继承的关键字,extends关键字在

Java面向对象的继承

继承也是面向对象的又一重要特性,继承是类于类的一种关系,通俗来说狗属于动物类,那么狗这个类就继承了动物类 java中的继承是单继承的,一个类只能继承与一个父类 子类继承父类之后,子类就拥有了父类的所有属性和方法,private的除外,优点就是可以提高代码的复用性,简单的继承实例如下: 1 public class Dog extends Animal { 2 //Dog类继承了Animal类中的所有非私有的属性和方法,可以直接使用了 3 } 使用继承还是挺简单的 方法重写 如果子类对继承父类的方

黑马程序员——java基础--面向对象--继承

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 继承: 1.当一个类中包含了另一个类的所有变量个方法时,但另一个类中不包含另一个类的所有变量和方法时,表示范围比较小的就可以作为另一个的父类. 集合表示:A属于B,B不属于A,A就可以作为B的父类,B继承A 2.当只是为了获取其他类的功能的时候,不能为了简化代码而继承. 3.必须是类与类之间的所属关系才可以继承,所属关系看前面集合 继承的特点: 1.不支持多继承,只支持单继承: 多继承的话容易

Java面向对象之继承

Java 中的继承规则: 1.子类继承父类所有的成员变量和成员方法,但是不能继承父类的构造方法. 2.子类虽然继承了父类的成员变量,但是子类不能直接访问父类的私有变量,可以通过getter/setter()方法进行访问 3.子类对父类构造函数的调用规则: a.子类的构造方法首先必须调用父类的构造方法. b.如果没有显示指定,子类的构造方法会默认的调用父类中的无参构造方法, 1 public class Animal { 2 public Animal() { 3 System.out.print

浅谈Java中类的继承

继承作为面向对象的三大基本特征之一,也是Java中必不可少的组成部分.因此,Java中类的继承和其他面向对象语言的继承都是大同小异的. 继承的优点: 通过继承可以简化类的定义. Java只支持单继承,不允许多重继承. 可以有多承继承,即一个类可以继承某个类的子类,如类B继承了类A,类C又继承了类B,那么C也间接的继承了A. 子类继承所有父类的成员变量和成员方法,但不继承父类的构造方法.在子类的构造方法中,可使用语句super(参数列表)调用父类的构造方法. 如果子类的构造方法中没有显性的调用父类