Java教程

关于Java继承的基础小知识课堂

本文主要是介绍关于Java继承的基础小知识课堂,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

继承

一、包

1.自定义包语法:

package <包名>

声明一个包的语句必须写在类中的第一行
2.包的导入语法:

import<包名>.<类名>

若要导入多个包,可使用“*”表示包中所有类

例如:

>import  Java.util.*;//导入java.util包中所有的类
>import java.util.ArrayList;//导入java.util包中的ArrayList类

示例:

package com.java.oriented.dota.scene;
public class Tree {
	public void clear(){		
	      //具体业务逻辑
	}
}
 
package com.java.oriented.dota.figure;
//由于Tree类与Hero类不在同一个包中,所以需要使用import关键字导入包
import com.java.oriented.dota.scene.Tree;
public class Hero {
	public void eatTree(Tree tree){
	              //调用树对象的clear()方法,吃掉的树在地图中消失
	             tree.clear();
	}
}

3.包的访问权限

1.public访问权限成员(类、属性和方法统称)
public 成员变可以被其他包中的类访问,public类中的protected成员可以被它派生的在其他包的子类中访问

2.缺省访问权限成员
缺省访问权限成员只能被同一个包中的类访问,不能别其他包中的类访问。

示例:

package com.java.oriented.dota.scene;
public class Tree {
	void clear(){  //去掉public	
	      //具体业务逻辑
	}
}
 
package com.java.oriented.dota.figure;
//由于Tree类与Hero类不在同一个包中,所以需要使用import关键字导入包
import com.java.oriented.dota.scene.Tree;
public class Hero {
	public void eatTree(Tree tree){
	              //调用树对象的clear()方法,吃掉的树在地图中消失
	             tree.clear();
	}
}
 

上述代码中tree.clear()会报错,因为tree类在另一个包中,并且在其中定义clean()的访问权限不是public

二、继承

1.概述

  • 继承是面向对象程序设计的一个重要特征,它是通过继承原有类派生出子类,进而构造出更为复杂的子类。
  • 子类既有新定义的行为特征,又继承了原有类的行为特征。
  • 父类与子类存在着包含与被包含的关系,是一种is-a的关系。
  • 在Java中继承可以在现有类的基础上进行功能的扩展,这样能够更加快速地开发出新类,使新类不仅可以复用当前类的特征和行为,而且还可以定义自己的特征和行为。
  • 通过继承可大幅度提高代码的复用性,减少代码量,便于程序的后期维护。
    ————————————————

Java继承语法:

[修饰符] class 子类名  extends 父类名{
  //类定义部分
} 

父类也称作基类或超类

2.继承的实现

代码如下(示例):

public class Weapon { //父类  武器
	String name;//武器名
	int attackValue;//攻击值
 
    	//构造方法
	public Weapon(String name, int attackValue) {
	    System.out.println("--执行武器父类Weapon的构造方法--");
		this.name = name;
		this.attackValue = attackValue;
	}
	//攻击方法
	public void attack(){
		System.out.println("武器名:"+name+"\t"+"攻击
			值:"+attackValue);
	}
}
public class Sword extends Weapon{ //圣剑  子类
	public Sword(String name, int attackValue) {
		super(name, attackValue);
	}
}
public class Spear extends Weapon{ //圣剑  长矛
	//构造方法
	public Spear(String name,int attackValue) {
		super(name, attackValue);
	}
}
public class ExtendsTest { // 测试类
 	public static void main(String[] args){
 		Sword word = new Sword("圣剑",300);
 		word.attack();
 		Spear spear = new Spear("长矛",250);
 		spear.attack();
 	}
}

在这里插入图片描述

总结

  • 声明包的语句是“package 包名”,该语句必须放在第一行,导入类的语句是 “import 包名.类名”。
  • 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例 域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
  • 子类继承父类的语法是:“[修饰符] class 子类名 extends 父类名”。

————————————————

这篇关于关于Java继承的基础小知识课堂的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!