Java 抽象类和 abstract 关键字

抽象类的概念:

包含一个抽象方法的类就是抽象类

抽象方法:

声明而未被实现的方法就是抽象方法,抽象方法必须使用 abstract 关键字进行声明

需要注意的是,

1. 抽象类被子类继承时,子类(如果不是抽象类)必须重写抽象类中的『所有』抽象方法

2. 抽象类不能直接被实例化,需要通过其子类进行实例化

抽象类的定义格式:

abstract class className{

  属性

  方法

  抽象方法

}

代码如下:

package hello;

abstract class Abs{
	private int age;
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public void tell(){

	}
	abstract public void say();
}

class Demo extends Abs{
	public void say(){

	}

}

public class AbstractDemo {

	public static void main(String[] args) {
		Demo aDemo = new Demo();
		System.out.println(aDemo.getAge());
	}

}

  

时间: 2024-10-12 03:15:33

Java 抽象类和 abstract 关键字的相关文章

Java final static abstract关键字介绍

一,抽象类:abstract 1,只要有一个或一个以上抽象方法的类,必须用abstract声明为抽象类; 2,抽象类中可以有具体的实现方法; 3,抽象类中可以没有抽象方法; 4,抽象类中的抽象方法必须被它的子类实现,如果子类没有实现,则该子类继续为抽象类 5,抽象类不能被实例化,但可以由抽象父类指向的子类实例来调用抽象父类中的具体实现方法;通常作为一种默认行为; 6,要使用抽象类中的方法,必须有一个子类继承于这个抽象类,并实现抽象类中的抽象方法,通过子类的实例去调用; 二,接口:interfac

小白心目中的Java抽象类(abstract class)

在java开发中,我们有时会定义了一个父类,这个父类只有对方法的描述,但却没有在父类中写出对方法的实现,这种被定义的方法称为抽象方法.那么理所当然,含有抽象方法的类就称为抽象类.用关键字abstract修饰. 例如我写一个父类Person: 1 abstract class Person{ 2 public abstract void study(); 3 public void eat(){ 4 System.out.println("吃的技能"); 5 } 6 } 可以看出,这个P

[Java] 接口(Interface)与 抽象类 (Abstract)使用规则和区别

接口(Interface) 是抽象方法的集合,接口通常以interface来声明. 一个类通过继承接口的方式,从而来继承接口的抽象方法. 接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念. 类描述对象的属性和方法.接口则包含类要实现的方法. 除非实现接口的类是抽象类,否则该类要定义接口中的所有方法. 接口无法被实例化,但是可以被实现.一个实现接口的类,必须实现接口内所描述的所有方法(所有方法都是抽象的方法),否则就必须声明为抽象类. 接口没有构造方法,支持多重继承,不能包含成员变量

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

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

【Java总结】final关键字,抽象类,接口,内部类

final final修饰类,表示这个 类不能被继承 final修饰方法,表示这个方法不能被重写 final修饰常量(常量大写),表示常量不能被修改内容 static final修饰的常量,表示全局常量 抽象类 使用abstract修饰的类,这个类是抽象类 使用abstract修饰的方法,为抽象方法,此方法只有生命没有实现 含有抽象方法的类必须是抽象类 抽象类不能实例化,抽象类的子类必须重写父类的抽象方法 不能使用abstract修饰属性,私有方法,构造器,静态方法,final方法 /*我为抽象

Java abstract关键字

抽象类: 1.语法定义:抽象类钱使用abstract关键字修饰,则该类为抽象类 2.使用场景: 在某些情况下,某个父类只是知道其子类应该包含怎样的方法,但无法准确知道这些子类如何实现这些方法 从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的模板,从而避免子类设计的随意性 3.作用: 限制规定子类必须实现某些方法,但不关注实现细节 4.使用规则: abstract定义抽象类 abstract定义抽象方法,只是声明,不需要实现 包含抽象方法的类是抽象类 抽象类中可以包含普通的方法,也

Java 面向对象编程 抽象类 抽象方法 abstract

抽象类 通过abstract定义的方法是抽象方法,它只有定义,没有实现.抽象方法定义了子类必须实现的接口规范: 定义了抽象方法的class必须被定义为抽象类,从抽象类继承的子类必须实现抽象方法: 如果不实现抽象方法,则该子类仍是一个抽象类: 面向抽象编程使得调用者只关心抽象方法的定义,不关心子类的具体实现. 如果父类的方法本身不需要实现任何功能 ,仅仅是为了定义方法签名,目的是让子类去覆写它,那么,可以把父类的方法声明为抽象方法.声明关键词abstract abstract class Pers

java抽象类和接口

1.抽象类 抽象类在概念上描述的是抽象世界,抽象类刻画了公有行为的特征,并且通过继承机制传送给它的派生类.抽象类使用关键字abstract 修饰,语法如下: abstract class 类名{ 类体; } 抽象方法是指在抽象类中某些成员方法没有具体的实现,只有方法声明.抽象方法使用关键字abstract 修饰,格式如下: public abstract 返回类型 方法名([参数列表]); 抽象类和抽象方法的具体规则如下: 1.用abstract 关键字修饰一个类时,该类叫做抽象类,用abstr

JAVA抽象类与接口的详细解读与示例

接口存在的原因: JAVA是单继承的,不支持多继承,但是有了接口,JAVA可以实现多个接口: 一个类要是实现某一个接口就必须实现接口内声明的所有方法(强迫执行,即便是空方法,也要实现): 接口特点: 1.接口内所有方法只有声明,没有方法体(隐式声明),例如:public abstract void func(); 2.接口内的所有变量都默认是public static final ,必须被显示初始化: 3.接口没有构造方法,不能被实例化: 4.实现接口的类要实现所有的抽象方法,否则该类就必须声明