类和对象浅谈(2)
2015-10-02 20:10
232 查看
上一篇简单的聊了一下如何初始化对象,这一篇我们简单的聊一下面向对象的三大特性(其实不止,但就这三种体现的最明显),封装、继承、多态,封装之前我们已经讲了 就是get与set方法(但是这是对于一个类里面来讲的,如果在一个项目中的封装是指工具类一类被经常用而且独立的的代码将其组合成一个类,也叫封装),那我们就来说说 继承与多态
继承:用一句谈恋爱时撒娇的话说就是 你的是我的,我的还是我的。
专业术语是这样解释的:继承父类父类中的方法和属性包括构造方法,继承是可以传递的
那我们就来看一个例子吧
不知道 各位看官 看明白木有 反正我是继承又有了进一步的认识,大家一起努力 努力 come on
继承:用一句谈恋爱时撒娇的话说就是 你的是我的,我的还是我的。
专业术语是这样解释的:继承父类父类中的方法和属性包括构造方法,继承是可以传递的
那我们就来看一个例子吧
public class Dog{ private String name; private int money; public Dog(String name,int money ){ this.name=name; this.money=money; } public void sunds(){ System.out.println("旺!!旺!!"); } public void eat (String name){ System.out.println(name+":"+"吃骨头"); } public static void main(String[] args) { Dog dog=new Dog("小狗1号",198); Pig pig=new Pig("小猪1号",5,250); pig.eat("猪"); dog.eat("狗"); pig.sunds(); dog.sunds(); double s=pig.money(250, 5); System.out.println("猪能卖多少钱:"+s); } } class Pig extends Dog{ private double zhongliang; public Pig(String name, int money, double zhongliang) {//因为增加了新的变量所以构造函数需要重写 super(name, money);//调用父类中的构造函数(super指父类中的,this是指本函数中的变量或方法) this.zhongliang = zhongliang;//对于新增的变量需要设置 } public void eat(String name){//重写父类中的eat()函数 System.out.println(name+":"+"吃饲料"); } public void sunds(){//重写父类中sunds方法 System.out.println("呼!!呼!!"); } public double money(double zhongliang,int money){//新定义一个money函数计算这头猪能卖多少钱^_^! return zhongliang*money; } }
不知道 各位看官 看明白木有 反正我是继承又有了进一步的认识,大家一起努力 努力 come on
相关文章推荐
- Android Native 绘图方法
- Python动态类型的学习---引用的理解
- 土人系列AS入门教程 -- 对象篇
- PostgreSQL教程(三):表的继承和分区表详解
- C#托管堆对象实例包含内容分析
- C#与.net高级编程 C#的多态介绍
- C#中面向对象编程机制之多态学习笔记
- C#中struct和class的区别详解
- C#实现获取不同对象中名称相同属性的方法
- Lua面向对象之类和继承浅析
- 浅析Ruby中继承和消息的相关知识
- javascript asp教程第十一课--Application 对象
- C#中的多态深入理解
- PowerShell中使用Out-String命令把对象转换成字符串输出的例子
- C#中多态、重载、重写区别分析
- VBS ArrayList Class vbs中的数组类
- VBS教程:对象-正则表达式(RegExp)对象
- 大家看了就明白了css样式中类class与标识id选择符的区别小结
- 设计引导--一个鸭子游戏引发的设计理念(多态,继承,抽象,接口,策略者模式)
- 【Python之旅】第四篇(四):基于面向对象的模拟人生游戏类