首页技术文章正文

JavaSE第二阶段笔记【黑马java培训】

更新时间:2019年07月26日 11时19分33秒 来源:黑马程序员论坛

Day1 继承&修饰符1. 继承
1.1继承的概念:
面向对象的三大基本特征之一,使子类可以拥有父类的属性和方法
1.2继承的格式:
语法: public class 子类 extends 父类.
1.3继承的优点:
提高了代码的复用性;
提高了代码的维护性.
1.4继承的缺点:
父类和子类强耦合(紧密联系)在一起了,子类无条件的继承父类的方法.
1.5继承中变量的访问特点:
规则:使用就近原则,局部优先原则.
子类的局部,子类成员,父类的成员.
1.6 super关键字的在访问成员变量时的用法:
super.成员变量名-->父类的成员变量;
this().成员变量名-->本类的成员变量.
1.7 继承中构造方法的访问特点(super调用构造方法):
super();子类回默认调用父类的无参构造方法,super()方法当中除注释以外的第一句代码,
this();本类的构造方法,方法当中除注释以外的第一句代码.
1.8 继承中成员的访问特点(super调用成员方法):
super.方法名()调用父类方法,
this.方法名()调用本类方法.
1.9 方法重写:
子类中出现和父类相同的方法.
1.10 方法重写的注意事项:
private方法不允许被重写,
private->默认->protected->public子类的方法的修饰符访问范围要大于父类的修饰符.
1.11 继承的注意事项:
类是单继承体系,
类是多层继承.
2.
2.1 package的概念:
包就是文件件,主要用来管理类.
语法:package com.test;
2.2 import的概念:
导入不同包中的java
语法:import com.test;
支持通配符* import com.test *;
3. 修饰符
3.1 权限修饰符
权限修饰符
同一个类
同包子类无关类
不同包子类
不同包无关类
private
可以
默认
可以
可以
protected
可以
可以
可以
public
可以
可以
可以
可以

3.2 final修饰符
变量:变量的值不可被改变;
方法:不可以被重写;
:不可被继承.
3.3 static修饰符
修饰属性:类名.属性名方式访问, 多个对象共享一个访问值.
修饰方法:类名.方法名()访问.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps2.pngDay2:多态的抽象类,接口多态的概念:
同一段代码在不同的时刻表现出不同的执行形态
多态的前提和体现
有继承/实现关系   有方法重写    有父类指向子类对象.
多态成员的访问特点
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps3.png多态的形式访问成员变量,访问的是父类的成员变量.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps4.png多态的形式访问成员方法,访问的是父类的成员方法,编译看左边,运行看右边.
多态的好处和弊端
好处:提高了程序的拓展性.
具体体现:定义方法的时候,使用父类作为参数,将来再使用的时候,使用具体的子类型参与操作.
弊端:不能使用子类型的具体操作.
多态中的转型
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps5.png向上转型:从子到父,父类引用指向子类对象  自动类型转化
向下转型:从父到子,父类引用转为子类对象 格式:子类 变量 = (子类强转)父类,强制类型转化
抽象类的概念
abstract 修饰的类
抽象方法的概念
没有方法体的方法.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps6.png抽象类的特点
1. 抽象类和抽象方法都需要abstract修饰
2. 抽象类里面可以没有抽象方法,但一个类有了抽象方法一定是抽象类.
3. 不能实例化,可以参照多态子类进行实例化,这叫抽象类多态
4. 抽象类的子类要么重写方法要么子类也是抽象类
抽象类的成员特点
1. 成员变量:可以是变量也可以是常量
2. 构造方法:有构造方法但是不能实例化,空参构造/有参构造
3. 成员方法:可以有普通方法和抽象方法.
接口的概述
特殊的类,类中所有方法都是抽象方法,作为一种行为规范.
接口的特点
1. 用关键字interface修饰,所有方法都是抽象方法.
2. 类与接口的关系是实现关系,类实现接口用implements表示.
3. 接口不能实例化对象
4. 接口的实现类,接口的实现类要么重写抽象方法,要么自己变成抽象类.
接口成员的特点
1. 接口中的成员变量默认被final/静态 修饰的,(常量被静态修饰),可以用接口名直接访问.
2. 接口里没有构造方法,主要是对行为进行抽象,所以没有具体方法
3. 接口里不能有非抽象方法,接口里的方法只能是抽象的,接口里的方法默认带public abstract.
类和接口的关系
类与类的关系:继承关系,单继承体系,支持多层继承.
类和接口的关系:实现关系,可以单实现,也可以多实现,还可以在继承一个类的时候实现多个接口
接口和接口的关系:接口和接口是继承关系并且是多继承.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps7.png 抽象类与接口的区别
成员区别
抽象类
变量,常量;有构造方法;有抽象方法,也有非抽象方法
接口
常量;抽象方法
关系区别
类与类
继承,单继承
类与接口
实现,可以单实现,也可以多实现
接口与接口
继承,单继承,多继承
设计理念区别
               
                                          
抽象类
对类抽象,包括属性.行为
接口
对行为抽象,主要是行为

推荐了解热门学科

java培训 Python人工智能 Web前端培训 PHP培训
区块链培训 影视制作培训 C++培训 产品经理培训
UI设计培训 新媒体培训 产品经理培训 Linux运维
大数据培训 智能机器人软件开发




传智播客是一家致力于培养高素质软件开发人才的科技公司“黑马程序员”是传智播客旗下高端IT教育品牌。自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,针对性地出版了计算机系列教材50多册,制作教学视频数+套,发表各类技术文章数百篇。

传智播客从未停止思考

传智播客副总裁毕向东在2019IT培训行业变革大会提到,“传智播客意识到企业的用人需求已经从初级程序员升级到中高级程序员,具备多领域、多行业项目经验的人才成为企业用人的首选。”

中级程序员和初级程序员的差别在哪里?
项目经验。毕向东表示,“中级程序员和初级程序员最大的差别在于中级程序员比初级程序员多了三四年的工作经验,从而多出了更多的项目经验。“为此,传智播客研究院引进曾在知名IT企业如阿里、IBM就职的高级技术专家,集中研发面向中高级程序员的课程,用以满足企业用人需求,尽快补全IT行业所需的人才缺口。

何为中高级程序员课程?

传智播客进行了定义。中高级程序员课程,是在当前主流的初级程序员课程的基础上,增加多领域多行业的含金量项目,从技术的广度和深度上进行拓展“我们希望用5年的时间,打造上百个高含金量的项目,覆盖主流的32个行业。”传智播客课程研发总监于洋表示。




黑马程序员热门视频教程【点击播放】

Python入门教程完整版(懂中文就能学会) 零起点打开Java世界的大门
C++| 匠心之作 从0到1入门学编程 PHP|零基础入门开发者编程核心技术
Web前端入门教程_Web前端html+css+JavaScript 软件测试入门到精通


在线咨询 我要报名
和我们在线交谈!