首先应该明确一点的是,抽象方法必须定义在抽象类中。

先看一个抽象类的定义:

public abstract class Animal {

    public abstract void eat();

    public abstract void sleep();

    public void Smile()
{
System.out.println("每个动物都会微笑,因为最美!");
} }

抽象类作为一个父类,可以定义抽象方法,也可以定义一般方法。

我们在来定义一个子类:

public class Man extends Animal{

    public void eat()
{
System.out.println("一天天就知道个吃");
} public void sleep()
{
System.out.println("就知道个睡");
} public static void main(String[] args)
{
Man obj=new Man();
obj.eat();
obj.sleep();
obj.Smile();
}
}

子类Man继承了抽象类,那么就必须将其抽象方法实现,是必须,必须,不然就会报错。

抽象类和接口的区别:

子类继承了抽象类,抽象方法必须实现,然而其他其他方法可以不实现,抽象方法中也可以定义不是抽象的方法

子类实现接口,接口中默认的方法都为抽象方法,也就不能实现,一个子类可以实现多个接口,而只能继承一个抽象类,其实接口是抽象类中更为具体的一种类而言。

public interface TrafficTool {

    void Car();

    void Airport();

    void Train();

}

public class LandTool implements TrafficTool {

    public void Car()
{
System.out.println("走,咋们炸汽车去");
} public void Airport()
{
System.out.println("走,咋们炸飞机去");
} public void Train()
{
System.out.println("抢火车去不去,愣货");
} public static void main(String[] args)
{
LandTool obj=new LandTool();
obj.Car();
obj.Airport();
obj.Train();
}
}

补充接口,接口不允许任何方法定义,接口和实现完美分离。

java抽象类和抽象方法的更多相关文章

  1. java抽象类、抽象方法、接口、实现接口详解

    对于java中的抽象类,抽象方法,接口,实现接口等具体的概念就不在这里详细的说明了,网上书本都有很多解释,主要是我懒,下面通过一个例子来说明其中的精髓要点,能不能练成绝世武功,踏上封王之路,就看自己的 ...

  2. Java 抽象类和抽象方法

    包含抽象方法的类叫抽象类,如果一个类中包含一个或多个抽象方法,该类必须被限定为抽象的,否则编译器会报错,抽象类不可创建对象,创建抽象类的对象编译器会报错 如果从一个抽象类继承,并想创建该新类的对象,那 ...

  3. java抽象类和抽象方法之间的关系

    抽象类和抽象方法之间的关系有抽象方法的类,一定是抽象类:抽象类不一定有抽象方法当子类继承抽象类时,必须要将抽象类中的抽象方法全部实现(或者称为重写),否则子类依然是抽象类因为子类是继承父类全部内容,所 ...

  4. JAVA抽象类和抽象方法(abstract)

    一.抽象(abstract)的使用 当父类的某些方法不确定时,可以用abstract关键字来修饰该方法[抽象方法],用abstract来修饰该类[抽象类]. 我们都知道,父类是将子类所共同拥有的属性和 ...

  5. Java抽象类和抽象方法例子

    题目:定义Shape类表示一般二维图形.Shape具有抽象方法area和perimeter,分别计算形状的面积和周长.试定义一些二维形状类(如矩形.三角形.圆形等),这些均为Shape类的子类并计算出 ...

  6. 【Java基础】抽象类和抽象方法的总结

    什么是抽象类 抽象类是相同概念实体的一种抽象,Java中用关键字abstract来定义抽象类和抽象方法. 什么是抽象方法 只有方法的声明,没有方法的具体实现的方法. 抽象类和抽象方法的特点 抽象类和抽 ...

  7. java中的抽象类和抽象方法

    知识点:java中的抽象类和抽象方法 关键字abstract意为抽象的,可以用来修饰类和方法,分别称作抽象类和抽象方法 抽象类一般在多态的场景中使用 一:抽象类(abstract class) 在类的 ...

  8. “全栈2019”Java第五十九章:抽象类与抽象方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  9. java中的抽象方法与抽象类

    在继承时,会遇到一个问题.如果很多子类都要继承父类的一个方法,但是实现的逻辑都不一样. 这时候父类只提供了方法名,但是没有具体的方法体. 例如,男孩类和女孩类都继承人类这一个父类.人类有爱好这个方法, ...

随机推荐

  1. has invalid type <class 'numpy.ndarray'>, must be a string or Tensor

    转自: https://blog.csdn.net/jacke121/article/details/78833922 has invalid type <class 'numpy.ndarra ...

  2. Nintex Forms Drop-Down "z-index"

    Now we’ve got the issue, that if we are working with a “Person-Column”, the drop-down where you can ...

  3. Uncaught SyntaxError: Unexpected token export

    开发过程中遇到这个错误,虽然不影响使用,但是每次浏览器控制台都会有错误输出,看起来十分不舒服,故翻阅资料发现是因为浏览器虽然支持了es6,但是不支持es6的Module直接使用,需要在script标签 ...

  4. C语言实现字符串逆序输出

    方法一: #include <stdio.h> #include <stdlib.h> #include <string.h> void Reverse(char ...

  5. MD5进行加密操作

    package com.dyy.test; import java.security.MessageDigest; import java.security.NoSuchAlgorithmExcept ...

  6. Goldbach's Conjecture POJ - 2262 线性欧拉筛水题 哥德巴赫猜想

    题意 哥德巴赫猜想:任一大于2的数都可以分为两个质数之和 给一个n 分成两个质数之和 线行筛打表即可 可以拿一个数组当桶标记一下a[i]  i这个数是不是素数  在线性筛后面加个装桶循环即可 #inc ...

  7. java JUC

    https://www.cnblogs.com/q151860/p/8589683.html

  8. 如何使用JPQL写纯SQL语句

    使用JPQL,需要把SQL语句修改成类似HQL 语句.SQL 查询的是数据库,而JPQL 查询的是对象和属性,在语法上是有些不同的.对于有些用JPQL 无法写出来的查询,还是使用原生SQL写出来方便 ...

  9. PSR-4 规范实例讲解 -- php 自动加载

    参考 参考文档:https://www.kancloud.cn/thinkphp/php-fig-psr/3144 参考实例:https://github.com/php-fig/fig-standa ...

  10. MT【269】含参函数绝对值最大

    设函数$f(x)=ax^2+(2b+1)x-a-2$($a,b\in\mathcal R$,$a\neq 0$). (1) 若$a=-2$,求函数$y=|f(x)|$在$[0,1]$上的最大值$M(b ...