欢迎这位怪蜀黍来到《Java从入门到实战之(14)面向对象之抽象类(二) - 大码王 - 博客园》

关闭页面特效

Java面向对象-抽象类

 

定义:在java中,含有抽象方法的类称为抽象类,同样不能生成对象;

注意点

1,包含一个抽象方法的类是抽象类;

2,抽象类和抽象方法都要用abstract关键字修饰;

3,抽象方法只需要声明而不需要实现;

4,抽象类必须被子类继承,(假如不是抽象类)必须重写抽象父类中的全部抽象方法;

5,抽象类不能被实例化;

我们先来定义一个抽象类:

复制代码
复制代码
 1 package com.java1234.chap03.sec11;
 2  
 3 /**
 4  * 定义一个抽象类People
 5  * @author user
 6  *
 7  */
 8 public abstract class People {
 9  
10     private String name;
11  
12     public String getName() {
13         return name;
14     }
15  
16     public void setName(String name) {
17         this.name = name;
18     }
19      
20     public void say(){
21         System.out.println("我的姓名是:"+this.getName());
22     }
23      
24     /**
25      * 定义一个抽象方法 职业 让子类去具体实现
26      */
27     public abstract void profession();
28      
29 }
复制代码
复制代码

抽象类,定义一个属性name 以及方法say() 再定义一个抽象方法 profession 具体实现让子类去实现;

 

我们搞一个测试类:

我么尝试下实例化下People类:

QQ鎴浘20161008194222.jpg

我们会看到 编译出错,不能实例化People类;

 

我们定义一个Student类,以及一个Teacher类:

复制代码
复制代码
 1 package com.java1234.chap03.sec11;
 2  
 3 public class Student extends People{
 4  
 5     @Override
 6     public void profession() {
 7         System.out.println("职业是:学生");
 8     }
 9  
10 }
复制代码
复制代码
复制代码
复制代码
 1 package com.java1234.chap03.sec11;
 2  
 3 public class Teacher extends People{
 4  
 5     @Override
 6     public void profession() {
 7         System.out.println("职业是:老师");
 8     }
 9  
10 }
复制代码
复制代码

我们搞一个测试类:

复制代码
复制代码
 1 package com.java1234.chap03.sec11;
 2  
 3 public class Test {
 4  
 5     public static void main(String[] args) {
 6          
 7         Student student=new Student();
 8         student.profession();
 9          
10         Teacher teacher=new Teacher();
11         teacher.profession();
12          
13     }
14 }
复制代码
复制代码

运行输出:

职业是:学生

职业是:老师

 posted on   大码王  阅读(129)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具

成都

复制代码

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示