当前位置:编程学习 > JAVA >>

Java封装、继承和抽象的实例

工具:MyEclipse 6.5
 
首先新建一个文件夹,我们这里做的是一个关于动物睡觉的实例,所以我的文件夹名字是AnimailSleep,然后在src下面建两个包Animail和Sleep
 
因为所有的动物都有相同的属性,和不同的睡觉方式,
 
所以在Animail包里面我们要封装这些属性和睡觉的方法,下面代码是Animail这个包里的animail类的属性封装
 
package Animail;
//抽象类(关键字abstract)这里将animail类抽象化了,
public abstract class animail {
 //封装,将我们认为是相同的属性列在animail类里,这里有动物名字(name)年龄(age)和颜色(color)
  private String name;
  private int age;
  private String color;
  //创建一个抽象方法 sleep(),抽象方法要加关键字(abstrct),抽象方法没有方法体(方法后面的花括号),因为子类的方法不一定全都相同,所以要自己定义
 public abstract void sleep();
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  
 }
 
//这里是动物名字封装,setName(String name)用于给动物名字赋值,getName()用于取出已存的值,下面的setAge/getAge等也是这样
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public int getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }
 public String getColor() {
  return color;
 }
 public void setColor(String color) {
  this.color = color;
 }
 
}
 
我们在父类里将动物名(name),年龄(age),颜色(color)进行封装了,并将类和类里的Sleep()方法抽象化了,接下来是在子类里继承
 
在Sleep包中建一个睡觉测试(SleepTest)类,
 
package Sleep;
 
//这段代码要注意
 
import Animail.animail;
//子类(SleepTest)继承父类(animail)关键字(extends)
 
public  class SleepTest extends animail{
 
//这是小狗的测试类,公共一个睡觉sleep()方法,
  public void sleep(){
   System.out.println("小狗晚上是不睡觉的");
  }
 
 public static void main(String[] args) {
  //因为抽象类不能被new,所以让父类(animail)new,子类(SleepTest();)接收实现
  animail a=new SleepTest();
  a.setAge(3);
  a.setColor("黑色");
  a.setName("黑虎");
  System.out.println("小狗名字:"+ a.getName());
  System.out.println("小狗颜色:"+ a.getColor());
  System.out.println("小狗年龄:"+ a.getAge());
  System.out.println("------------");
  a.sleep();
 }
 
}
 
 
补充:软件开发 , Java ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,