JAVA学习–Abstract使用方法

JAVA学习–Abstract使用方法

* abstract:抽象的,可以用来修饰类、方法
 

*


 * 1.abstract修饰类:抽象类


 * 1)不可被实例化


 * 2)抽象类有构造器 (凡是类都有构造器)


 * 3)抽象方法所在的类,一定是抽象类。


 * 4)抽象类中可以没有抽象方法。


 *


 * 2.abstract修饰方法:抽象方法


 * 1)格式:没有方法体,包括{}.如:public abstract void eat();


 * 2)抽象方法只保留方法的功能,而具体的执行,交给继承抽象类的子类,由子类重写此抽象方法。


 * 3)若子类继承抽象类,并重写了所有的抽象方法,则此类是一个”实体类”,即可以实例化


 * 4)若子类继承抽象类,没有重写所有的抽象方法,意味着此类中仍有抽象方法,则此类必须声明为抽象的!


 *
 
 
 1 public class TestAbstract {
 2     public static void main(String[] args) {
 3         //Person p1 = new Person();
 4         //p1.eat();
 5        
 6         Student s = new Student();
 7         s.eat();
 8        
 9         Person p = new Student();//多态
10         p.eat();
11        
12     }
13 }
14 
15 abstract class Creator{
16     abstract void breath();
17 }
18 
19 abstract class Person extends Creator{
20     String name;
21     public abstract void eat();
22     public abstract void walk();
23    
24     public String getName() {
25         return name;
26     }
27     public void setName(String name) {
28         this.name = name;
29     }
30     public Person(){
31        
32     }
33     public Person(String name){
34         this.name = name;
35     }
36 }
37 class Student extends Person{
38     public void eat(){
39         System.out.println("学生吃饭");
40     }
41     public void walk(){
42         System.out.println("学生走路");
43     }
44     @Override
45     void breath() {
46         System.out.println("学生不应该呼吸雾霾的空气");
47     }
48 }
49 
50 abstract class Worker extends Person{
51     public void eat(){
52         System.out.println("工人吃饭");
53     }
54 //    public void walk(){
55 //        System.out.println("工人走路");
56 //    }
57 }
58 
59 class Animal{
60     //不是抽象方法!
61     public void sleep(){
62        
63     }
64 }

 

转载于:https://www.cnblogs.com/zhangfan94/p/4263288.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109566.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • nvaicat15激活码【中文破解版】

    (nvaicat15激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html0YQJ1128OW-eyJsaWNlbnNlSWQi…

    2022年3月27日
    86
  • 局域网和广域网_简单的局域网怎么搭建

    局域网和广域网_简单的局域网怎么搭建局域网1、什么是局域网:局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。也称为内网。2、局域网怎么实现:以太网是全球使用最广泛的局域网技术,有线局域网通常通过双绞线(一般直接说网线)连接;无线局域网现在一般通过交换机、路由器实现。3、局域网可以干什么:局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。广域网1、什么是广域网:将各局域网或城域网连接起来便是广域网,也称为外网或公网。2、广域网怎么实现:现在的传

    2022年10月19日
    2
  • C++获取当前系统时间_罗兰C系统

    C++获取当前系统时间_罗兰C系统C库中与系统时间相关的函数定义在头文件中,C++定义在头文件中。获取系统时间的方法都在time头文件里面定义。

    2022年9月1日
    4
  • drone无人机是什么意思_无人机3droll是什么意思

    drone无人机是什么意思_无人机3droll是什么意思所以看到XTDronehttps://mp.weixin.qq.com/s/yU_xj8bMAASm8cIZnn2iZw看到Dronekit

    2022年4月19日
    82
  • 监控神器普罗米修斯Prometheus安装配置「建议收藏」

    监控神器普罗米修斯Prometheus安装配置「建议收藏」一、基础环境环境/组件版本下载地址操作系统CentOS7.3http://archive.kernel.org/centos-vault/7.3.1611/isos/x86_64/CentOS-7-x86_64-DVD-1611.isoPrometheus2.6.0https://prometheus.io/download/#prometheusgo…

    2022年6月9日
    162
  • Matlab画图颜色设置

    Matlab画图颜色设置注意:MATLAB中调色板色彩强度[0,1],0代表最暗,1代表最亮。     常用颜色的RGB值  ——————————————–  颜色  R G B  &…

    2022年5月31日
    389

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号