java中抽象类和抽象方法到底什么关系?请举例说明!
抽象类和抽象方法什么关系?抽象类中可能有抽象方法,也可能没有抽象方法。那位说,就跟没说一样,那抽象类和抽象方法都叫抽象,他们必定有关系,那关系是什么呢?如果一个类中有抽象方法,它必须得是抽象类。
An abstract class may have no abstract method,such as the following class Car. 马 克- t o --wi n: At this time,the only point and the meaning of abstract class is that we can not instantiated the class, because it is abstract class.Why an abstract class can have a nonabstract method? what is the point? also in logic, think over the following example, car is a bit abstract in that you dont' know exactly whether it is a truck or a jeep or a limersine, 马克-to-win:so it is defined as a abstract class. but no matter whether it is truck,jep, or limersine, it definitely use steering wheel. so its steer() method is an ordinary method instead of an abstract method. )
Abstract class can’t be instantiated.
例1.7.1---
abstract class Nothing {//里面有方法也照样声明为abstract
void nothing() {
System.out.println("nothing");
}
}
abstract class VehMark_to_win {
abstract void steer();
abstract void move();
}
class Bike extends VehMark_to_win {//Bike不是抽象的, 所以必须得全部实现abstract方法
void steer() {
System.out.println("Turn handlebar");
}
void move() {//Bike不是抽象的, 所以必须得实现move方法
System.out.println("move");
}
}
abstract class Cart extends VehMark_to_win {
//因为Cart是抽象的, 可以这里还是什么都不干
}
abstract class Car extends VehMark_to_win {
void steer() {
System.out.println("Turn steering wheel");
}
void move() {
System.out.println("move");
}
}
class Lim extends Car {
//之所以这里可以什么都不干, 而且还不是抽象的,马克-to-win: 因为父类Car全部实现了Veh的抽象方法
}
更多内容请见原文,原文转载自:https://blog.csdn.net/qq_44639795/article/details/103117449
最新文章
- Fragment之间的通信(四)
- Rock-Paper-Scissors Tournament[HDU1148]
- 关于php语言的使用! ------php语言与JavaScript的使用 方法是相似
- android Json详解
- 错误:Error:未定义标识符";_TCHAR";
- centos7 学习1 KDE配置中文
- TabControl控件
- UVA 1515 Pool construction 水塘(最大流,经典)
- JavaScript核心
- hive函数总结-字符串函数
- Angular.js!(附:聊聊非原生框架项目)
- 使用solr6.0搭建solrCloud
- 基于.netcore 开发的轻量Rpc框架
- StringBUffer和StringBuilder详解
- JavaScript 以及 css3进度条
- [TCP/IP] 计算机网络性能指标
- MySQL用户远程登录问题
- Beta阶段冲刺---Day2
- 评定星级的前端显示js
- hyperledger-fabirc1.2-ca-server的生产示例