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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Robber 中级黑马   /  2016-2-19 20:11  /  425 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package cn.itcast_01_oop;

/*
* 面向对象 :  基于面向过程的 .  找一个对象帮你解决问题.
*
*
*
* 定义类--> 创建对象 -->调用方法
*
* 面向对象 三大特征 :
* 封装  --   定义类  , 描述一类事物   
*        成员变量
*        构造方法
*        成员方法   
*                get /set    -- 取值  赋值
*                toString    -- 用字符串表示对象的
*                hashCode() equals   -- 保证对象唯一性  
*
*            特有方法            
*  
* 继承 
*                 共性内容封装成一个类 , 子类 继承父类  .  复用
*                 继承内容: 非私有 成员 都可以继承 .
*                   单继承 : 只有一个亲爹  
*                 多层继承 : 爹还可以有爹
*                
*
* 多态
*                 前提条件:
*                 1. 继承或者实现 关系 ( 二选一 )
*                 2. 方法重写 (不重写不会错 ,但是没有意义)
*                 3. 父类引用 指向 子类对象  
*                         Fu  f  = new Zi();
*        成员特点:
*                编译时, 都看左边
*                运行时 , 成员方法看右边 .
*/

public class Demo1 {
        public static void main(String[] args) {
                // 创建对象
                MianShiGuan m = new MianShiGuan();
        //        Person p = new Person();

        //        m.mianShi(p);

               
                Student student = new Student();
               
                m.mianShi(student);
               
                Person p  = new Student();
               
                p.answer();  // 写 父类的 answer  
        }
}

class MianShiGuan {
        public void mianShi(Person p) {  //父类  
                ask();
                p.answer();
                ask();
                p.answer();
        }

        public void ask() {
                System.out.println("问问 ,你的刁难的问题  ");
        }
       
       
}

class Person {
        public void answer() {
                System.out.println("问什么答什么 !!");
        }
}


class Student extends Person{
       
        // 重写  
        @Override
        public void answer() {
                System.out.println("聊天儿 ..... 聊高兴  就哦了 ");
        }
       
}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马