Java Day 09
子父类的构造函数
在子类的构造函数中,第一行有一个默认的隐式语句:super()
子类的实例化过程:子类中所有的构造函数默认都会访问父类中的空参数的构造函数。
为什么子类实例化的时候要访问父类中的构造函数呢?
子类实例化细节
构造器 显示初始化什么时候完成
默认初始化 父类构造器 显示初始化
Person p = new Person();
1、JVM读取.class文件,并加载进内存
2、堆内存开辟空间,
3、对对象属性进行默认初始化
4、调用构造函数进行初始化
5、在构造函数中,调用父类构造函数并初始化
6、对子类的属性进行显示初始化
7、对子类构造函数的特定初始化
8、初始化完毕,将值赋给引用变量
final关键字
类 方法 变量
修饰的类 不可以被继承
修饰的方法 不可以被覆盖
修饰的变量 只能赋值一次 变量名全部大写
抽象类
abstract 方法以“;”结尾
特点
1、方法只有声明,没有实现,需要使用abstract修饰,同时类也要被abstract 修饰
2、抽象类不可以被实例化。
3、继承的子类必须覆盖所有父类的抽象方法,才能被实例化。否者
细节
1、抽象类有构造函数吗 有,用于给子类对象进行初始化
2、抽象类可以不定义抽象方法吗 可以 目的是不让该类不创建对象。例:AWT的适配器对象就是这种类
3、抽象关键字不可以和哪些关键字共存 private、static、final
4、抽象类和一般类的异同点 都是用来描述事物;
不同:描述事物的信息全和不全;有没有抽象方法;可不可以被实例化
5、抽象类一定是一个父类么?
是 需要子类覆盖其抽象方法
接口
它里面的方法全是抽象方法,关键是interface;
1、常见的成员 全局常量、抽象方法,都有固定的修饰符,不写自动添加
public static final
public abstract
接口的成员都是公共的权限
实现 implements
接口不能实例化
多实现
细节
避免了单继承的局限性
接口之间可以多继承,方法体是否重载
特点
多实现、降低耦合、功能扩展
接口与抽象类的区别
相同点:都是抽取的概念
不同点:
1、抽象是继承关系,单继承
接口是实现关系,多实现
2、抽象类是is a 关系
接口是 like a 关系
3、抽象类中可以定义非抽象方法
接口的方法全是抽象方法,且有固定的修饰符
Java Day 09的更多相关文章
- JAVA第09次实验(IO流)
JAVA第09次实验(IO流) 0.字节流与二进制文件 我的代码 import java.io.DataInputStream; import java.io.DataOutputStream; im ...
- 029 01 Android 零基础入门 01 Java基础语法 03 Java运算符 09 逻辑“非”运算符
029 01 Android 零基础入门 01 Java基础语法 03 Java运算符 09 逻辑"非"运算符 本文知识点:Java中的逻辑"非"运算符 逻辑& ...
- Java第09次实验(IO流)-实验报告
0. 字节流与二进制文件 使用DataOutputStream与FileOutputStream将Student对象写入二进制文件student.data 二进制文件与文本文件的区别 try...ca ...
- Java第09次实验(IO流)--实验报告
0.字节流与二进制文件 我的代码 用DataOutputStream和FileOutputStream将Student对象写入二进制文件student.data package test; impor ...
- Java第09次实验(流与文件)
第一次实验 0. 字节流与二进制文件 1.使用DataOutputStream与FileOutputStream将Student对象写入二进制文件student.data 二进制文件与文本文件的区别 ...
- Java设计模式09:单例模式的强化(控制实例个数n)
1. 单例模式的本质: 控制实例数目(目的节约资源) 2. 单例模式体现的一些思想: (1)延迟装载(Lazy Load):懒汉式 (2)缓存:饿汉式 3. 单例模式的变形使用: 控制使用实例个数为3 ...
- GUI编程笔记(java)09:GUI控制文本框只能输入数字字符案例
1.首先我们看看我的需求,如下: 控制文本框只能输入数字字符 2.源代码: package cn.itcast_07; import java.awt.FlowLayout; import jav ...
- Java基础09 类数据与类方法
链接地址:http://www.cnblogs.com/vamei/archive/2013/03/31/2988622.html 作者:Vamei 出处:http://www.cnblogs.com ...
- Java面试09|多线程
1.假如有Thread1.Thread2.Thread3.Thread4四条线程分别统计C.D.E.F四个盘的大小,所有线程都统计完毕交给Thread5线程去做汇总,应当如何实现? 把相互独立的计算任 ...
- [java初探09]__关于java的包装类
前言 在Java语言的学习过程中,我们逐渐的理解了Java面向对象的思想,与类和对象的应用.但是在基本数据类型的使用上,我们无法将其定义为一个对象,通过使用对象的方法来使用它们,但是Java语言的思想 ...
随机推荐
- sql语句小练习二
1.创建一个数据库StudentManage, 初始化大小10M,不足以1M每次增长 create database StudentManage on ( name = 'StudentManag ...
- DEDECMS自动编号(序号)autoindex属性
让织梦dedecms autoindex,itemindex 从0到1开始的办法! 1 2 3 [field:global name=autoindex runphp="yes"] ...
- Windows phone 8 学习笔记(3) 通信(转)
Windows phone 8 可利用的数据通信方式比较广泛,在硬件支持的前提下,我们可以利用WiFi.蓝牙.临近感应等多种方式.数据交互一般通过套接字来完成,我们将在本文详细的分析. 快速导航:一. ...
- Android IOS WebRTC 音视频开发总结(十五)-- 培训课程大纲
最近在给公司做内部培训,主要是关于即时通讯和移动视频通话,包括android与android,ios与ios,android与ios,以及手机与PC. ------------------------ ...
- Apache无法访问 Forbidden
如图: 打开 找到: <Directory "E:/wamp/www/"> # # Possible values for the Options directive ...
- PHP开发大型项目的一点经验
一.变量 最好是把所有的变量存储在一个数组中,这样在程序的开发中可以带来很多的方便,特别是当程序很大的时候.变量的命名就当适合自己的习惯,不管是用拼音还是英语,至少应当有一定的意义,以便适合记忆.变量 ...
- 【转】HTML5新增元素兼容旧浏览器方法
ref:http://www.jb51.net/html5/163906.html 问题:如何让IE8-兼容这些标签?(需要设计JS中的DOM) 代码如下: <span style=" ...
- 《第一行代码--Android》阅读笔记之广播
广播接收器 1.注册方式 动态注册:在程序中注册,如在Activity里的onCreate()方法中注册 静态注册:在AndroidManifest.xml中注册 2.可接收哪些广播 接收系统消息 ...
- 使用JavaScript获取Request中参数的值
本人很少写博客,有不正确的地方还希望大家多多指导. 假设现在有一个URL,如下. http://www.jacky.com/?id=1101&name=jacky 如何通过JS访问到id和na ...
- wordpress学习-themes-001
这一篇主要是来记录wordpress theme的内容.关于为什么要自己编写wordpress theme的理由,相信大家都有各自的体会.想让自己的博客变的更加突出?更加个性话?wordpress t ...