A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


面向对象        抽象类的小例子。
如果不会的话可以参考一下
抽象类的概念:当描述事物时,没有足够的信息对该事物进行描述,那么该描述对应的类就是一个抽象类.

需求:
                具体事物:基础班学生,就业班学生
                共性:姓名,年龄,学习
                特性:
                        基础班学生学JavaSE
                        就业班学生学Android

// 分析   
//要声明的属性   姓名   年龄   
//学习没有说是学什么,所以是抽象的,要用抽象方法来写,
/*
思路:
           1、定义一个类来存放公共的属性和行为。并重写构造方法
          2、定义一个基础班的学生类     有构造方法,重写学习的方法
            3、定义一个就业办学生类。        有构造方法,重些学习方法
           4、创建一个测试类来测试
*/

//测试类
public class Demo2 {

        public static void main(String[] args) {
                BaseStudent bs=new BaseStudent("张三",18);                   //创建一个基础班学生的对象
                bs.Study();                                                                             //调用学习的方法
                JiuYeStudent jys=new JiuYeStudent("李四",20);                 //创建一个就业班学生的对象
                jys.Study();                                                                           //调用学习的方法
        }
}
// 1、抽象出一个类来存放公共的属性和行为。并重写构造方法
abstract class Student{
        private String name;
        private int age;
        public Student(){
               
        }
        public Student(String name,int age){
                this.name=name;
                this.age=age;
        }
        public String getName() {
                return name;
        }
        public void setName(String name) {
                this.name = name;
        }
        public int getAge() {
                return age;
        }
        public void setAge(int age) {
                this.age = age;
        }
        public abstract void Study();
}
//     2、定义一个基础班的学生类     有构造方法,重写学习的方法
class BaseStudent extends Student{
        public BaseStudent(){
               
        }
        public BaseStudent(String name,int age){
                super(name, age);
        }
        public void Study(){
                System.out.println("姓名:"+this.getName()+",年龄:"+this.getAge()+"基础班学生学JavaSE");
        }
}
  // 3、定义一个就业办学生类。        有构造方法,重些学习方法
class JiuYeStudent extends Student{
        public JiuYeStudent(){
               
        }
        public JiuYeStudent(String name,int age){
                super(name, age);
        }
        public void Study(){
                System.out.println("姓名:"+this.getName()+",年龄:"+this.getAge()+"就业班学生学Android");
        }
}

1 个回复

倒序浏览
顶一个!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马