子父类的构造函数
 在子类的构造函数中,第一行有一个默认的隐式语句: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的更多相关文章

  1. JAVA第09次实验(IO流)

    JAVA第09次实验(IO流) 0.字节流与二进制文件 我的代码 import java.io.DataInputStream; import java.io.DataOutputStream; im ...

  2. 029 01 Android 零基础入门 01 Java基础语法 03 Java运算符 09 逻辑“非”运算符

    029 01 Android 零基础入门 01 Java基础语法 03 Java运算符 09 逻辑"非"运算符 本文知识点:Java中的逻辑"非"运算符 逻辑& ...

  3. Java第09次实验(IO流)-实验报告

    0. 字节流与二进制文件 使用DataOutputStream与FileOutputStream将Student对象写入二进制文件student.data 二进制文件与文本文件的区别 try...ca ...

  4. Java第09次实验(IO流)--实验报告

    0.字节流与二进制文件 我的代码 用DataOutputStream和FileOutputStream将Student对象写入二进制文件student.data package test; impor ...

  5. Java第09次实验(流与文件)

    第一次实验 0. 字节流与二进制文件 1.使用DataOutputStream与FileOutputStream将Student对象写入二进制文件student.data 二进制文件与文本文件的区别 ...

  6. Java设计模式09:单例模式的强化(控制实例个数n)

    1. 单例模式的本质: 控制实例数目(目的节约资源) 2. 单例模式体现的一些思想: (1)延迟装载(Lazy Load):懒汉式 (2)缓存:饿汉式 3. 单例模式的变形使用: 控制使用实例个数为3 ...

  7. GUI编程笔记(java)09:GUI控制文本框只能输入数字字符案例

    1.首先我们看看我的需求,如下: 控制文本框只能输入数字字符   2.源代码: package cn.itcast_07; import java.awt.FlowLayout; import jav ...

  8. Java基础09 类数据与类方法

    链接地址:http://www.cnblogs.com/vamei/archive/2013/03/31/2988622.html 作者:Vamei 出处:http://www.cnblogs.com ...

  9. Java面试09|多线程

    1.假如有Thread1.Thread2.Thread3.Thread4四条线程分别统计C.D.E.F四个盘的大小,所有线程都统计完毕交给Thread5线程去做汇总,应当如何实现? 把相互独立的计算任 ...

  10. [java初探09]__关于java的包装类

    前言 在Java语言的学习过程中,我们逐渐的理解了Java面向对象的思想,与类和对象的应用.但是在基本数据类型的使用上,我们无法将其定义为一个对象,通过使用对象的方法来使用它们,但是Java语言的思想 ...

随机推荐

  1. C\C++ 框架和库整理(转)

    [本文系外部转贴,原文地址:http://coolshell.info/c/c++/2014/12/13/c-open-project.htm]留作存档 下次造轮子前先看看现有的轮子吧 值得学习的C语 ...

  2. css的#和.的区别

    css的#和.的区别, css的#和.的区别 2009-03-04 14:43fyws  分类:Html/Css | 浏览 1911 次 css的#和.的区别如:#home #h3 { padding ...

  3. MySQL语法

    sql(structure query language)结构化查询语言ansi iso/iec组织制定ddl(data definition language) 数据定义语言dml(manipula ...

  4. C#反射动态调用dll中的方法

    //加载程序集(dll文件地址),使用Assembly类 Assembly assembly = Assembly.LoadFile(AppDomain.CurrentDomain.BaseDirec ...

  5. HTML中Meta标签大全

    在网页的HTML源代码中一个重要的代码“”(即通常所说的META标签).META标签用来描述一个HTML网页文档的属性,例如作者.日期和时间.网页描述.关键词.页面刷新等. 1.META标签的keyw ...

  6. float:left居中对齐

    <div class="M1180"><div class="services"> <div class="serv_c ...

  7. AppSetting ,connectionStrings配置节

    <appSettings> <!-- 当前使用的学校代码 --> <add key="DefaultCompanyID" value="cs ...

  8. habse的CopyTable

    需求:对hbase的一张表进行拷贝 一.table1的内容如下 hbase(main)::> scan 'table1' ROW COLUMN+CELL column=f1:age, times ...

  9. getComputedStyle(and currentStyle)

    1.getComputedStyle 1.1 用法: currentStyle获取计算后的样式,也叫当前样式.最终样式.优点:可以获取元素的最终样式,包括浏览器的默认值,而不像style只能获取行间样 ...

  10. nginx的rewrite,gzip,反向代理学习笔记

    rewrite模块名:ngx_http_rewrite_module默认自动被编译 指令:rewrite regex replacement [flag] regex :正则表达式,用于匹配用户请求的 ...