Java类中定义抽象,java中抽象类的定义和使用

java虽然比较简单,但是细节的知识点还是很多的,现在,介绍一下抽象类的定义和实现基础。

指的是在类中定义方法,而不去实现它,而在它的子类中去具体实现,继承抽象类的子类必须实现父类的抽象方法,除非子类是一个被定义的抽象类。

1、抽象类定义的格式

修饰符 abstract 类名 {

类体

}

2、抽象方法格式:

修饰符 abstract 返回值类型 方法名();

注意:在抽象类中的方法不一定是抽象方法,含有抽象方法的类必须定义成抽象类。

3、案例证明

package for_apro;

import java.util.*;

//抽象类的声明

abstract class Animal {

String type;

String name;

int age;

int weight;

void eat() {

System.out.println("动物爱吃饭");

}

//抽象方法在抽象类中只能声明,不能具体实现

abstract void breath();

void sleep() {

System.out.println("动物在睡觉");

}

}

//由子类去继承父类抽象类

class tiger extends Animal{

@Override

//在此处实现抽象方法

void breath() {

// TODO Auto-generated method stub

System.out.println("老虎在呼吸");

}

}

public class first_for {

public static void main(String [] args){

// 错误,程序会报错

//报错原因:抽象类不能进行实例化操作

//Animal Tiger = new Animal();

//只能用子类进行实例化

Animal Tiger = new tiger();

Tiger.breath();

}

}

执行结果:

老虎在呼吸

转:二十一、详细解析Java中抽象类和接口的区别

转:二十一.详细解析Java中抽象类和接口的区别 http://blog.csdn.net/liujun13579/article/details/7737670 在Java语言中, abstract ...

关于JAVA中抽象类和接口的区别辨析

今天主要整理一下新学习的有关于Java中抽象类和接口的相关知识和个人理解. 1 抽象类 用来描述事物的一般状态和行为,然后在其子类中去实现这些状态和行为.也就是说,抽象类中的方法,需要在子类中进行重写 ...

Java中抽象类也能实例化

在Java中抽象类真的不能实例化么? 在学习的过程中,发现了一个问题,抽象类在没有实现所有的抽象方法前是不可以通过new来构建该对象的,但是抽象方法却是可以有自己的构造方法的.这样就把我搞糊涂了,既然 ...

Java中抽象类也能实例化.RP

在Java中抽象类真的不能实例化么? 在学习的过程中,发现了一个问题,抽象类在没有实现所有的抽象方法前是不可以通过new来构建该对象的,但是抽象方法却是可以有自己的构造方法的.这样就把我搞糊涂了,既然 ...

Java中返回值定义为int类型的 方法return 1返回的是int还是Integer&&finally中return问题

在Java中返回值定义为int类型的 方法return 1:中返回的是Integer值,在返回的时候基本类型值1被封装为Integer类型. 定义一个Test类,在异常处理try中和finally中分 ...

Java 中抽象类与接口的区别

TypeScript 中的接口,有点类似抽象类的概念.Java 中抽象类属于包含属性与抽象行为,而接口通常只是抽象行为.抽象类可以实现模板模式. 参考 https://www.cnblogs.com/ ...

转载:详细解析Java中抽象类和接口的区别

在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制.正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力.abstract class和int ...

Java中抽象类和接口的区别

转载自:http://dev.yesky.com/436/7581936.shtml 在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制.正是由于这两种 ...

详细解析Java中抽象类和接口的区别

在Java语言中, abstract class 和interface 是支持抽象类定 义的两种机制.正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力.abstract class和in ...

随机推荐

ASP.NET Global Application_Error事件中访问Session报错 解决

报错信息:会话状态在此上下文中不可用 protected void Application_Error(object sender, EventArgs e) { //以此判断是否可用Session ...

C# this.invoke()作用 多线程操作UI

Invoke()的作用是:在应用程序的主线程上执行指定的委托.一般应用:在辅助线程中修改UI线程( 主线程 )中对象的属性时,调用this.Invoke(); //测试的窗体 public class ...

团队开发之《极速蜗牛》NABC分析

一.简介 项目名称:极速蜗牛 特点:操作简单,视觉与听觉配合,让用户有最完美的体验. 二.NABC分析 N(need):在人们无时无刻离不开手机的今天,难免有无聊的时候,此刻一款操作简单又能令人们动脑 ...

【NHibernate】配置- sql打印

NHibernate.Dialect.MsSql2008Dialect

CodeForces 605A Sorting Railway Cars

求一下最长数字连续上升的子序列长度,n-长度就是答案 O(n)可以出解,dp[i]=dp[i-1]+1,然后找到dp数组最大的值. #include #include&lt ...

php写留言板

简单的PHP留言板制作 做基础的留言板功能  需要三张表: 员工表,留言表,好友表 首先造一个登入页面:

Jmeter接口测试-断言

JMeter接口测试-断言  对应qq群号:616961231 一个http请求发出,怎么判断执行的是否正确呢? 通过检查服务器响应数据,是否符合预期的数据, 如果是,任务成功,  如果否, 任务失败 ...

Windows Server 2016-管理站点复制(二)

为了保持所有域控制器上的目录数据一致和最新,Active Directory 会定期复制目录更改.复制根据标准网络协议进行,并使用更改跟踪信息防止发生不必要的复制,以及使用链接值复制以提高效率. 本章 ...

vue 渲染函数&jsx

前端更新状态,更新视图,所以性能问题主要由Dom操作引起的,而js解析编译dom渲染就要快得多,  所把要js和html混写. vue 的动态js操作 html  方法:reader函数: vue  ...

python操作三大主流数据库(13)python操作redis之新闻项目实战①新闻数据的导入

1.新闻处理页面redis_news.py #coding:utf-8 import math import redis class RedisNews(object): def __init__(s ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值