Java语言程序设计 类和对象(继承性和方法的重写)

一、继承性的理解

1.好处:①减少代码的冗余,提高代码的属性

②便于功能的扩展

③为之后多态性的使用提供了前提

2.继承的格式: class A extends B{}

 

A: 子类,派生类 subclass

B:父类,基类 superclass

3.体现:一旦子类A继承父类B以后,子类A中就获取了父类B中声明的结构,属性,方法;

特别地,父类中声明为private的属性或方法,子类继承以后仍然认为获取了父类中的私有结构,只是因为封装性的影响使得子类不能直接调用父类的结构而已。

4. 子类继承父类以后,还可以定义声明自己特有的属性或方法,实现功能的拓展,子类和父类的关系,不同于子集和集合的关系,一个父类可以有多个子类,但一个子类只能有一个父类。

5 Java中继承性的规定:

 ① 一个类可以被多个子类继承。

② 一个类只能有一个父类:类的单继承性。

③ 子父类是一个相对的概念:类的多继承性。

④ 子类直接继承的父类称为直接父类,简称父类;间接继承的父类称为间接父类。

⑤子类继承父类以后,就获取了直接父类以及间接父类中声明的属性和方法。

package exercise;

public class csdn 
{
	public static void main(String[] args) 
	{
		Students s = new Students();
		s.age = 2;
		s.name = "jay";
		s.eat();
		System.out.println("年龄是:"+ s.age+" 姓名是:"+s.name);
	}
	
}
class Person
{
	int age;
	String name;
	public void eat() 
	{
		System.out.println("人吃饭");
	}
}
class Students extends Person
{
	
}

 

二、方法的重写(overide/overwrite)

1.定义:在子类中根据需要对从父类中继承的方法进行改造,也称为方法的重置覆盖,在执行程序时,子类的方法将覆盖父类的方法

  1.1 重写: 子类继承父类以后,可对父类中的同名同参的方法进行覆盖

  1.2 重写的规定:

方法的声明:

约定俗成:子类中的方法称为重写的方法,父类中的方法称为被重写的方法

① 重写的方法的方法名和形参列表与被重写的方法相同。

② 重写的方法的权限修饰符不小于被重写的方法的。

特殊情况:子类不能重写父类中声明为private权限的方法

③返回值类型:

被重写的方法的返回值类型是void,重写的方法只能是void。

被重写的方法的返回值类型是A,重写的方法可以是A或A的子类

被重写的方法的返回值类型是基本数据类型,重写的方法必须是同样的基本数据类型

④重写的方法抛出的异常类型不能大于被重写的方法抛出的异常类型

package exercise;

public class csdn 
{
	public static void main(String[] args) 
	{
		Students s = new Students();
		s.age = 2;
		s.name = "jay";
		s.eat();
		System.out.println("年龄是:"+ s.age+" 姓名是:"+s.name);
	}
	
}
class Person
{
	int age;
	String name;
	public void eat() 
	{
		System.out.println("人吃饭");
	}
}
class Students extends Person
{
	public void eat() 
	{
		System.out.println("学生多吃点有营养的");
	}
}

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

差劲的厉害了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值