JAVA:编写一个动物的继承关系代码.下面是一个简单的 Java 程序示例java继承的传递性代码,用于实现山羊和狼的继承关系java继承的传递性代码 , 并在测试类中进行验证:
Animal.java:
```java
public abstract class Animal {
public void walk() {
System.out.println("走路");
}
public abstract void eat();
}
```
Goat.java:
```java
public class Goat extends Animal {
@Override
public void eat() {
System.out.println("吃草");
}
}
```
Wolf.java:
```java
public class Wolf extends Animal {
@Override
public void eat() {
System.out.println("吃肉");
}
}
```
AnimalTest.java:
```java
public class AnimalTest {
public static void main(String[] args) {
Goat goat = new Goat();
wolf wolf = new wolf();
【java继承的传递性代码 java里继承的概述】goat.eat(); // 输出:吃草
wolf.eat(); // 输出:吃肉
goat.walk(); // 输出:走路
wolf.walk(); // 输出:走路
}
}
```
在此程序中java继承的传递性代码,java继承的传递性代码我们定义了一个 `Animal` 类作为基类,包含了所有动物都会有的行为(例如走路),并使用抽象方法 `eat()` 表示不同动物的饮食习惯 。然后通过继承实现 `Goat` 和 `Wolf` 两个子类,并分别重写 `eat()` 方法 。
在测试类中,java继承的传递性代码我们分别创建了一个 `Goat` 和一个 `Wolf` 对象,并分别调用其 `eat()` 和 `walk()` 方法进行验证 。可以看到,不同的动物具备不同的饮食习惯,但它们的走路行为是一致的 。
java中的继承定义 。继承是面向对象最显著的一个特性 。继承是从已有的类中派生出新的类java继承的传递性代码,新的类能吸收已有类的数据属性和行为,并能扩展新的能力 。
Java继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类 。这种技术使得复用以前的代码非常容易 , 能够大大缩短开发周期,降低开发费用 。比如可以先定义一个类叫车,车有以下属性:车体大小 , 颜色,方向盘,轮胎,而又由车这个类派生出轿车和卡车两个类,为轿车添加一个小后备箱,而为卡车添加一个大货箱 。
java继承特征:
(1)继承关系是传递的 。若类C继承类B,类B继承类A(多继承),则类C既有从类B那里继承下来的属性与方法,也有从类A那里继承下来的属性与方法 , 还可以有自己新定义的属性和方法 。继承来的属性和方法尽管是隐式的,但仍是类C的属性和方法 。继承是在一些比较一般的类的基础上构造、建立和扩充新类的最有效的手段 。
(2)继承简化java继承的传递性代码了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系 。
(3)继承提供了软件复用功能 。若类B继承类A,那么建立类B时只需要再描述与基类(类A)不同的少量特征(数据成员和成员方法)即可 。这种做法能减小代码和数据的冗余度,大大增加程序的重用性 。
(4)继承通过增强一致性来减少模块间的接口和界面 , 大大增加了程序的易维护性 。
(5)提供多重继承机制 。从理论上说,一个类可以是多个一般类的特殊类,它可以从多个一般类中继承属性与方法 , 这便是多重继承 。Java出于安全性和可靠性的考虑,仅支持单重继承,而通过使用接口机制来实现多重继承 。
JAVA中什么是继承?继承在本职上是特殊一般的关系 , 即常说的is-a关系 。子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的 一些属性或方法 。
1.Java继承的语法格式:
Java继承的关键字是:extends
public class 子类名 extends 父类名{...}
如: public class UNStudent extends Student {...} 注:1.子类又称超类 , 拓展类 ;父类又称基类 。
2.Java中类的继承只能是单继承(单根继承),即一个类只能继承一个父类,但是一个类可以由多个类来继承它 。
3.Java会给每一个没有设置父类的类 , 自动添加一个父类就是Object。
扩展资料:
一、子类继承父类的结果
1.子类继承父类后,继承到了父类所有的属性和方法 。注:是所有 。
2.子类可调用的方法也要看情况而定:
子类和父类在同一个包下时 “子类和子类的对象”可以调用父类的默认的,受保护的,公有的属性以及方法 。
子类和父类在不同的包下时,在子类中可以调用受保护的,公有的属性以及方法,而子类的对象可以调用受保护的,公有的属性以及方法 。
二、方法的重写
1.当子类和父类都有某种方法,而子类的方法更加要求细致,或者实现功能不同,就需要方法的重写 。
2.重写条件
①必须要存在继承关系;只有继承之间的关系才能有方法的重写
②方法的返回值类型,方法名,参数个数,参数类型,参数顺序,必须要完全一致;
如:父类中方法 public void play (int n ; String s){方法体1...}
重写后的子类方法public void play(int n ; String s){方法体2...}
3.子类重写方法时的访问修饰符可以大于或者等于父类方法的访问修饰符 。
4.重写后的方法会被优先调用 。
三、自动转型
自动转型的实现要求有继承关系
格式如下:父类名 对象名 = new 子类构造方法;
如:Student stu = new UNStudent;
而强制转型格式如下:子类名 对象名 = (子类名)父类对象名
如:UNStudent un = (Student)stu;
自动转型可以拓宽方法的作用访问域
在使用自动转型后,子类自己定义的方法是不能在自动转型后执行;
原因是因为Java的编译机制,它会优先判断父类中是否存在该方法,如果存在则通过编译,如果不存在则报错 。
第二种自动转型:转型后只需要不同类的不同对象调用想吐的方法,很方便!
/**访问修饰符 返回值数据类型 方法名(父类类型 参数名,...){
调用方法 。
}
父类名 对象名 = new 子类名;
子类名 对象名 = new 子类名;
方法名(对象名);
*/
比如拿到驾驶证为A2的人,可以驾驶重型货车,当然也可以驾驶大型货车,中型货车,小型货车,小客车 , 小轿车,摩托车... 可以选择第二种自动转型的方法,便于调用同一个方法 。
自动转型好处:1.减少冗余代码;2.在方法设置参数时,扩大访问范围 。
四、多态
多态是由方法重载,继承,方法重写,自动转型等技术的组合 。
五、为什么需要继承?
1.提高代码的重用性 。
2.提高程序的扩展性 。
参考资料:
JAVA继承总结
写一个最简单的JAVA继承代码??谢谢可运行的:
import java.awt.*;
import java.awt.event.*;
public class BackJFrame extends Frame{
public BackJFrame(){
super("台球");
setSize(300,300);
setBackground(Color.cyan); //背景
setVisible(true);
addWindowListener(new WindowAdapter()
{
public void windowClosing (WindowEvent e)
{System.exit(0);}
} );
}
public static void main(String args[]){
new BackJFrame();
}
}
关于java继承的传递性代码和java里继承的概述的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- sap费用报表,sap全套报表
- 公众号怎么看收益,微信公众号收益怎么查
- 水下翻盘技巧视频直播教学,水下翻身视频
- mysql数据库怎么分解 上海今年热到什么时候
- oracle只查最近七天的数据,oracle查询每3天内的数据
- 下载僵尸世界大战,下载僵尸世界大战中文版
- 2017单机新游戏,2017年好玩的单机游戏
- php在数据库中存放图片 php在数据库中存放图片文件
- wordpress页面pdf,WordPress页面错乱