黑马程序员技术交流社区

标题: 面向对象:封装、继承和多态、抽象类、接口 [打印本页]

作者: 知行合意    时间: 2015-7-30 01:13
标题: 面向对象:封装、继承和多态、抽象类、接口
/**
      面向对象:抽象类、接口、继承和多态
*/
/**接口*/
interface Chinese
{
        void speack();
}
/**抽象类*/
abstract class Person
{
        /**封装属性-姓名*/
        private String name;
        /**封装属性-年龄*/
        private int age;
        /**无参构造方法*/
        public Person(){}
        /**带参构造方法*/
        public Person(String name,int age)
        {
                this.name = name;
                this.age = age;
        }
        /**设置姓名*/
        public void setName(String name)
        {
                this.name = name;
        }
        /**获取姓名*/
        public String getName()
        {
                return name;
        }
        /**设置年龄*/
        public void setAge(int age)
        {
                this.age = age;
        }
        /**获取年龄*/
        public int getAge()
        {
                return age;
        }
        /**打印输出name和age的方法*/
        public void show()
        {
                //打印输出name和age
                System.out.println("姓名:"+name+"***"+"年龄:"+age+"岁");
        }
        /**睡觉的方法*/
        public  void sleep()
        {
                System.out.println("睡觉");
        }
        /**吃的抽象方法*/
        abstract void eat();

}
/**学生类继承Person抽象类实现接口Chinese*/
class Student extends Person implements Chinese
{
        /**无参构造方法*/
        public Student(){}
       
        /**说话的方法*/
        public void speack()
        {
                System.out.println("说汉语");
        }
        /**重写Person吃的方法*/
        public void eat()
        {
                System.out.println("学生吃米饭");
        }
       
}
/**教师类继承Person抽象类实现接口Chinese*/
class Teacher extends Person implements Chinese
{
        /**无参构造方法*/
        public Teacher(){}
        /**说话的方法*/
        public void speack()
        {
                System.out.println("说汉语");
        }
        /**重写Person吃的方法*/
        public void eat()
        {
                System.out.println("吃牛肉面");
        }
        /**老师教书的方法*/
        public void teach()
        {
                System.out.println("教英语");
        }
}
/**测试类*/
class PersonTest1
{
        /**
                主方法,用来运行Person、Student和Teacher类
                是程序的入口,被JVM调用
        */
        public static void main(String[] args)
        {
                //创建对象-多态
                Person p =new Student();//父类引用指向子类对象
                /**给name赋值*/
                p.setName("张三");
                /**给age赋值*/
                p.setAge(20);
                //调用show()方法
                p.show();
                //调用eat()法
                p.eat();
                //调用sleep()方法
                p.sleep();               

        }
}
作者: 嗯十一点晚安    时间: 2015-7-30 06:05
好辛苦啊,加油啊,鼓励鼓励
作者: 宋明文    时间: 2015-7-30 10:19

好辛苦啊,加油啊,鼓励鼓励




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2