Java从入门到放弃篇17(类的继承,对象创建,方法重写)

今天,我接着大家分享一波Java编程。

首先,我们先在src文件夹下新建一个second包,在second包中新建Example13.java文件。
然后,将下面的代码放进文件中。
代码如下图:

package second;

import java.util.*;
class Animal{
     
	String name,sex,position;
	void discribe() {
     //定义了一个方法,描述动物
		Scanner input = new Scanner(System.in);
		System.out.print("请输入动物名称,性别,位置:");
		name = input.next();
		sex = input.next();
		position = input.next();
		System.out.println("这是父类!!");
		System.out.println("动物名称是:"+name);
		System.out.println("性别是:"+sex);
		System.out.println("位置是:"+position);
		System.out.println();
	}
}

class Person extends Animal{
     
	void discribe() {
     //方法重写
		System.out.println("这是子类1!!");
	}
	void printInfo() {
     
		Scanner input = new Scanner(System.in);//创建输入对象
		System.out.print("请输入姓名,性别,职业: ");
		name = input.next();//继承了父类的属性(Stirng引用类型)
		sex = input.next();
		position = input.next();
		System.out.println("姓名:"+name+"\n性别:"+sex+"\n职业:"+position);
		System.out.println();
	}
}

class Fish extends Animal{
     
	void discribe() {
     //方法重写
		System.out.println("这是子类2!!");
	}
	void printInfo() {
     //当前类的私有方法
		String kind;//在Fish类中定义一个品种String
		Scanner input = new Scanner(System.in);
		System.out.print("请输入动物名称,性别,品种:");
		name = input.next();//继承属性
		sex = input.next();//继承属性
		kind = input.next();//当前类的私有属性
		System.out.println("名称:"+name+"\n性别:"+sex+"\n品种:"+kind);
	}
}

class Example13{
     
	public static void main(String[] args) {
     
		System.out.println("这是主类!!");
		System.out.println();
		Animal A = new Animal();//实例化对象
		Person P1 = new Person();//实例化对象
		Person P2 = new Person();//一个类可以实例化多个对象
		Fish F = new Fish();//实例化对象
		A.discribe();//通过对象调用方法
		P1.discribe();
		P2.printInfo();
		F.discribe();
		F.printInfo();
	}
}

关于代码的解释,我写在注释中了,若有疑惑可私聊。

运行结果,如下图:
Java从入门到放弃篇17(类的继承,对象创建,方法重写)_第1张图片
最后,感谢大家前来观看鄙人的文章,文中或有诸多不妥之处,还望指出和海涵。

你可能感兴趣的:(java,类,面向对象编程,eclipse,多态)