Lesson_8 上课笔记 ----继承
2013 - 01 - 18 Lesson_8 继承
1 /*********************************************************** 2 * Lesson_8_1 3 * 4 * 继承(inheritance) 5 * 13-01-18 6 * note by CocoonFan 7 ************************************************************ 8 ************************************************************ 9 * 一.内存 10 * 1.代码存放在代码段; 11 * 局部变量和基本数据类型存放于栈; 12 * 引用类型存放于堆中; 13 * 静态变量(static)、字符串存放于数据段。 14 * 二.继承 -- 代码的重用 15 * 1.利用现有的类(基类或父类)创建新的类(派生类或父类) 16 * 2.派生类:基类的方法 + 附加的方法 17 * 3.层次越高越抽象 18 * 4.[访问修饰符] class 派生类名 extends 基类名 {} 19 * 5.Java只支持单继承 20 * 6.父类中的构造方法不能被子类继承 21 * 7.子类的构造方法只需要考虑自己的成员变量,不必考虑父类的成员变量 22 * 8.实例化子类对象的时候,先执行父类的构造方法再执行子类的构造方法 23 * 有多级构造方法的时候类似.此时会创建匿名的父类对象,之后JVM会 24 * 将其回收. 25 * 9.如果父类的构造方法失败,子类的构造方法也不能成功 26 * 10.所有对象有一个顶级父类 Object 27 * 二.super关键字 28 * 1.必须是子类构造方法的第一条语句 29 * 2.用于显式地指明调用父类的构造方法super([参数1,...]); 30 * 3.不写会默认调用父类无参的构造方法 31 * 4. 32 * 33 ************************************************************/ 34 35 public class Lesson_8{ 36 public static void main(String[] args) { 37 38 Animal animal = new Animal(); 39 animal.sleep(0); 40 41 Cat cat = new Cat(); 42 cat.sleep(2); 43 44 cat.setName("波斯猫");//父类(animal)的名字name并不会改变 45 System.out.println(cat.getName()); //波斯猫 46 System.out.println(animal.getName()); // null 47 } 48 } 49 50 class Animal{//父类 51 52 private String name; 53 private int age; 54 55 //构造方法 56 public Animal(){ 57 System.out.println("动物的构造方法"); 58 } 59 60 public Animal(String name, int age){ 61 this.name = name; 62 this.age = age; 63 System.out.println("动物的带2个参数的构造方法"); 64 } 65 66 public String getName() { 67 return name; 68 } 69 70 71 public void setName(String name) { 72 this.name = name; 73 } 74 75 76 public int getAge() { 77 return age; 78 } 79 80 81 public void setAge(int age) { 82 this.age = age; 83 } 84 85 86 public void sleep(int hour){ 87 System.out.println("动物能睡觉,已经睡了" + hour + "个小时了"); 88 } 89 90 } 91 92 class Cat extends Animal{ 93 private String color;//属于Cat 94 95 public Cat(){ 96 super(); 97 } 98 99 public Cat(String color){ 100 super("", 0);//会调用父类带有两个参数的构造方法 101 this.color = color; 102 System.out.println("猫的构造方法");//会先调用父类的构造方法 103 } 104 }
转载于:https://www.cnblogs.com/CocoonFan/archive/2013/01/18/2867028.html
Lesson_8 上课笔记 ----继承相关推荐
- Redis教程(上课笔记)
Redis教程 1. 什么是NoSql NoSQL一词最早出现于1998年,是Carlo Strozzi开发的一个轻量.开源.不提供SQL功能的关系数据库.2009年,Last.fm的Johan Os ...
- 学习Linux第一次上课笔记
一.配置IP地址 1.设置网络连接模式为NAT模式. 学习linux第二次上课笔记 2.获取IP地址,首先运行dhclinet服务,然后敲ip add进行查看,自动获取的IP地址. 学习linux第二 ...
- HCIP-Datacom 821/831题库以及上课笔记、视频、配套讲义分享
有幸过了HCIP-Datacom,其中821 884分,831 917分,感谢万能网络提供了那么多宝贵的资源. 整理了821/831题库,都是一个字一个字打上去的,供参考,基本上做到90%的准确率,通 ...
- SuperMap怎样实现测面积的代码(上课笔记)
标题SuperMap怎样实现测面积的代码(上课笔记) (作者:李寿宇,撰写时间:2019年1月16日) 1).地图发布以后,引入SuperMap iserver <SuperMap.Includ ...
- java上课笔记大全_JAVA基础知识上课笔记
1.八种数值类型: int short long float double char byte boolean 2.两次转换类型:自动类型转换,强制类型转换. 在某种条件下系统自动完成类型转换, 1) ...
- Java学习笔记--继承和多态(下)
1.通过继承来开发超类(superclass) 2.使用super 关键词唤起超类的构造方法 3.在超类中覆盖方法 4.区分override和overload 5.在Object类中探索toStrin ...
- 面向对象程序设计-C++ Default constructor Copy constructor Destructor Operator Overloading【第九次上课笔记】...
先上笔记内容吧: 这次上课的内容有关 构造函数 析构函数 运算符重载 return * this 内容很细,大家好好回顾笔记再照应程序复习吧 :) #include <iostream>u ...
- 上课笔记--商法(上)
//2015年7月5日 不同于其他商学课程,商法是一门让人觉得学了绝对有用的商科课. 记得大一的时候看了朱苏力的<法理学>,如今再对应着现在学的具体法条,而且是效率为先的商法.略有所悟. ...
- 自动控制原理上课笔记(不定期更新)
文章目录 前言 自动控制的一般概念 经典控制理论和现代控制理论的区别 自动控制的基本原理与方式 自动控制系统基本控制方式 对自动控制系统的基本要求 控制系统的数学模型 数学模型 微分方程 小偏差法 传 ...
- Python 学习笔记 -- 继承与多态(入门级实例)
1 #继承 2 #假设有不同品种的鱼,它们的蛋白质含量都不同,那么我们吃掉这些鱼获得的效果也应该不同 3 #---------------------------------------------- ...
最新文章
- 在Paddle中利用AlexNet测试CIFAR10数据集合
- 后处理安装_你所不了解的国六后处理
- 【MM模块】 Goods Receipt 收货 2
- Dubbo使用Zooker注册服务
- 解决magento保存产品时耗时很长的问题
- 3-30Pytorch与auto-variabletensor
- 酷炫的VR选座,阿里大麦背后的技术堪称豪华
- java web mysql备份,Java Web 实现Mysql 数据库备份与还原
- jquery-galleryview-2.0 漂亮多样化的图片特效(多项自定义)
- 基恩士PLC实例笔记①--立项及编程
- 司空见惯 - 体彩中奖交多少税
- 考察数据结构——第三部分:二叉树和BSTs[译]
- 该怎么把光纤接入家里预埋的网线中?
- 石家庄12重点项目开工,滹沱新区更名为正定新区
- 论参加数学建模比赛的正确姿势
- 如何设置Foxmail收取yahoo.com.cn和yahoo.cn以及yahoo.com等邮箱的方法
- 数据库管理工具 Navicat 和 DBeaver
- 数字图像处理 - 什么是数字图像处理
- 9种数据类型,数据类型区别及判断数据类型方法
- Laravel 上传文件大小改为200M
热门文章
- Hadoop(十二)MapReduce概述
- flask+jsonp跨域前后台交互(接口初体验)
- Java基础知识强化之网络编程笔记22:Android网络通信之 Android常用OAuth登录(获取个人信息)...
- Phpcms V9 栏目列表调用文章点击量及评论数量方法(转)
- django 已登陆用户的权限问题
- 关于Linux的目次结构及干系分区成绩
- 洛谷P3871 [TJOI2010]中位数(splay)
- 【C语言】-一维数组
- Parentheses Column Values
- 为什么「margin:auto」可以让块级元素水平居中?