复习了一下java基础,随手做个例子,就当作笔记用吧!
抽象类:
/**
* 抽象类一般声明这个类所拥有的基本特征(属性)和行为(方法)
* 里面可以有非抽象的方法
*
*/
public abstract class AbstractCar {
/**
* 抽象类中可以有抽象方法,也可以有其他方法
*/
public int lunzi = 2;// 轮子
// 抽象方法不需要{},由子类中具体实现
public abstract void move(); // 移动方法
// 不是抽象方法就需要{}
public void yinqing() {
System.out.println("抽象类中引擎类型方法:");
};
}
以下是抽象类的两个子类:
public class Car extends AbstractCar {
/**
* 如果子类中没有定义与父类相同的属性,this.xx调用的父类中的属性 此时 给this.xx或super.xx的属性赋值都是给父类属性重新赋值
*
*/
private int lunzi;
/**
*
* move方法是父类抽象方法的具体实现
*/
@Override
public void move() {
this.lunzi = 4;// 本类如果没声明lunzi属性就会重新给父类lunzi赋值
System.out.println(this.lunzi);
System.out.println("父类默认属性:" + super.lunzi + "只轮子");
// TODO Auto-generated method stub
System.out.println("我是汽车,要跑了!");
super.yinqing();
this.yinqing();
}
public void yinqing() {
System.out.println("子类汽车引擎~~~~~");
}
}
public class Bike extends AbstractCar {
private int lunzi;
@Override
public void move() {
this.lunzi=2;
System.out.println("自行车轮子:"+this.lunzi);
super.yinqing();
this.yinqing();
// TODO Auto-generated method stub
}
public void yinqing(){
System.out.println("单车引擎,哈哈!");
}
}
接口
public interface IDoor {
public void alarm();
}
TestA类
public class TestA {
public void close() {
// TODO Auto-generated method stub
System.out.println("关门。。。。。");
}
public void open() {
// TODO Auto-generated method stub
System.out.println("开门。。。。");
}
}
TestB类
public class TestB extends TestA implements IDoor{
public void open(){
System.out.println("子类开门.....");
}
public void close(){
System.out.println("子类关门.....");
}
public void alarm(){
super.open();
this.open();
super.close();
this.close();
System.out.println("接口警报。。。。。");
}
}
分享到:
- 2009-03-04 23:10
- 浏览 713
- 评论(0)
- 论坛回复 / 浏览 (0 / 1469)
- 查看更多
相关推荐
11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别....
抽象类和接口的区别 在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持...
主要介绍接口与抽象类的区别,为那些困惑的人指点迷津。
接口与抽象类的区别 抽象方法是必须实现的方法。就象动物都要呼吸。但是鱼用鳃呼吸,猪用肺呼吸。 动物类要有呼吸方法。怎么呼吸就是子类的事了。 现在有很多讨论和建议提倡用interface代替abstract类,两者从...
抽象类和接口的区别
C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例 C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例
4.实现抽象类和接口的类必须实现其中的所有方法。 抽象类中可以有非抽象方法。接口中则不能有实现方法。如果接口或者抽象类的子类不想实现则继续携程一个抽象方法 5.接口中定义的变量默认是public static final ...
(3) 抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明为抽象类 (4) 具体派生类必须覆盖基类的抽象方法 (5) 抽象派生类可以覆盖基类的抽象方法,也可以不覆盖。如果不覆盖,...
10.java接口和抽象类的相似性.zip10.java接口和抽象类的相似性.zip10.java接口和抽象类的相似性.zip10.java接口和抽象类的相似性.zip10.java接口和抽象类的相似性.zip10.java接口和抽象类的相似性.zip10.java接口和...
Java中的类、抽象类和接口的区别和联系
Java 接口和抽象类
java利用接口和抽象类改写求圆的面积和梯形的面积.docx
NULL 博文链接:https://wwhhll.iteye.com/blog/760051
在Java语言中,abstract class和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,...
java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例java抽象类与接口实例...
抽象类和接口 区别分析抽象类和接口 区别分析
抽象类和接口实验报告
1. 设计并使用抽象类; 2.学习如何定义接口,掌握接口的实现方式,使用实现了接口的类; 3.理解接口与抽象类的区别。