Java之关键字abstract(抽象类与抽象方法)

/* * abstract关键字的使用 * 1.abstract:抽象的 * 2.abstract可以用来修饰的结构:类、方法 *  * 3. abstract修饰类:抽象类 *        > 此类不能实例化 *      > 抽象类中一定有构造器,便于子类实例化时调用(涉及:子类对象实例化的全过程) *      > 开发中,都会提供抽象类的子类,让子类对象实例化,完成相关的操作 *  *  * 4. abstract修饰方法:抽象方法 *        > 抽象方法只有方法的声明,没有方法体 *        > 包含抽象方法的类,一定是一个抽象类。反之,抽象类中可以没有抽象方法的。 *      > 若子类重写了父类中的所有的抽象方法后,此子类方可实例化 *        若子类没有重写父类中的所有的抽象方法,则此子类也是一个抽象类,需要使用abstract修饰 */public class AbstractTest {   public static void main(String[] args) {

      //一旦Person类抽象了,就不可实例化//    Person p1 = new Person();//    p1.eat();

   }}

abstract class Creature{   public abstract void breath();}

abstract class Person extends Creature{   String name;   int age;

   public Person(){

   }   public Person(String name,int age){      this.name = name;      this.age = age;   }

   //不是抽象方法:// public void eat(){//    // }   //抽象方法   public abstract void eat();

   public void walk(){      System.out.println("人走路");   }

}

class Student extends Person{

   public Student(String name,int age){      super(name,age);   }   public Student(){   }

   public void eat(){      System.out.println("学生多吃有营养的食物");   }

   @Override   public void breath() {      System.out.println("学生应该呼吸新鲜的没有雾霾的空气");   }}

原文地址:https://www.cnblogs.com/wpy188/p/12081675.html

时间: 2024-11-11 02:07:15

Java之关键字abstract(抽象类与抽象方法)的相关文章

2.匿名类,匿名类对象,private/protected/public关键字、abstract抽象类,抽象方法、final关键字的使用,多线程Thread类start方法原理

package com.bawei.multithread; //注意:模板方法我们通常使用抽象类或者抽象方法!这里我们为了方便在本类中使用就没有使用抽象类/抽象方法 public class TemplateThread { //如果这个方法不想被子类或者别人随意改动[这样子类就不能覆写该方法了],这里方法就要设置为final方法 public final void println(String message){ System.out.println("###################

阿花宝宝 Java基础笔记 之 抽象类与抽象方法

一 . 抽闲累和抽象方法   1.  抽象类中的抽象方法必须被子类实现  除非子类也是抽象的.   2.抽象类不能呗实例化  但是抽象类的引用可以志向一个具体实现他的子类对象   3.  抽象类中的有构造方法  不能通过实例化的方式调用 但是可以在创建子类对象时候调用  所以说抽象累的构造方法是为让子类调用的    4. 抽象类中的抽象方法不可能 被调用  因为不能有一个抽象类的对象(抽象类不能被实例化)   5. 抽象类中可以有普通成员(变量 方法)  静态方法  但是子类的中同名的静态方法不

Java简明教程 09. 抽象类(abstract class)和接口(interface)

抽象类(abstract class) 描述抽象的事物,  比如人类(human), 就是一个抽象类. 对于人类这个抽象类, 具体的就是某一个人, 比如张三(男)啊, 小红(女)啊,虽然说人都会eat, 可是男人和女人的eat似乎又是不一样的.男人一般都是大口大口的吃, 而女人比较慢条斯理. AbstractDemo.java 1 abstract class Human { //抽象类, 特点: 1. 前面有abstract修饰 2 // 2. 无法直接生成一个对象,需要子类去继承这个类, 并

【Java知识点总结】 final关键字与抽象类

final关键字: 概念: 学习了继承我们发现继承有一个弊端,就是它会打破封装性:如果不让其他类继承该类,就不会有重写了,→可以通过Java中的几个关键字来实现,final(最终化). final关键字是一个修饰符,可以修饰类.方法.变量(成员变量.局部变量.静态变量). 什么时候用? 当程序中一个数据使用时是固定不变的,这时为了增加阅读性,可以给该数据起个名字,这就是变量,为了保证这个变量的值不被修改,加上final修饰,这就是一个阅读性很强的常量.书写规范:被final修饰的常量名所有的字母

二、Java面向对象(14)_抽象类和抽象方法

2018-05-06 抽象类和抽象方法 一.抽象的使用 当父类的某些方法不确定时,可以用abstract关键字来修饰该方法[抽象方法],用abstract来修饰该类[抽象类]. 我们都知道,父类是将子类所共同拥有的属性和方法进行抽取,这些属性和方法中,有的是已经明确实现了的,有的还无法确定,那么我们就可以将其定义成抽象,在后日子类进行重用,进行具体化.这样,抽象类也就诞生了. 例如,定义了"动物"父类,其中"动物名称"和"动物年龄"属性已经明确了

Java 抽象类和抽象方法

包含抽象方法的类叫抽象类,如果一个类中包含一个或多个抽象方法,该类必须被限定为抽象的,否则编译器会报错,抽象类不可创建对象,创建抽象类的对象编译器会报错 如果从一个抽象类继承,并想创建该新类的对象,那么必须为基类中的所有抽象方法提供方法定义,如果不这样做(可以选择不做),那么导出类便也是抽象类,且编译器会强制我们用abstract关键字来限定这个类.. 可以创建没有任何抽象方法的抽象类,创建抽象类和抽象方法非常有用,因为我们可以使类的抽象性明确起来,并告诉用户和编译器打算怎么去使用它们,抽象类还

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

抽象类和抽象方法之间的关系有抽象方法的类,一定是抽象类:抽象类不一定有抽象方法当子类继承抽象类时,必须要将抽象类中的抽象方法全部实现(或者称为重写),否则子类依然是抽象类因为子类是继承父类全部内容,所以也就相当于子类中也有了抽象方法,通过重写,可以将抽象方法覆盖. 抽象类的特点:必须有abstract关键字修饰,不可以通过new来创建对象,抽象方法不可以写函数体(非抽象方法必须写函数体) 关键字小总结:不想让别的类重写的方法,用final:内容不确定的方法,用abstract(子类中用法不一样)

java 笔记(3)抽象类与抽象方法

抽象类与抽象方法 (抽象类必须被继承,抽象方法必须被重) 抽象类:包含一个抽象方法的类. 抽象方法:声明而未被实现的方法,抽象方法必须使用abstract关键字声明. abstract class Person{ private int age; private String name; public Person(int age, String name) { this.age = age; this.name = name; } public int getAge() { return ag

JAVA之抽象类与抽象方法

抽象方法:在类中没有方法体的方法,就是抽象方法.抽象类:含有抽象方法的类就叫抽象类.|||||||||抽象类不能被实例化(new)为什么要使用抽象方法?(以下是个人观点)因 为在面向对象的编程的思想中,任何事物都可以看做是一个类.例如:每个动物都需要休息,都要睡觉(sleep),而不同的动物有不同的睡觉方法,如,蝙蝠 是倒挂在树上睡,小狗是爬着睡,蛇是盘着睡……等等.由此可以看出,每种动物的睡觉的方式都不一样,但转过头来思考,他们又确实都是在做着同一件事情 (sleep).因此,在JAVA中引入