黑马程序员日记-2

原创 2015年11月18日 19:51:57

------- Android培训java培训 期待与您交流! ----------

内部类:一般用于类的设计

* 内部类可以直接访问外部类成员,外部类不能直接访问内部类成员,可 以通过内部类对象访问。

如果内部类中定义了静态成员, 该内部类也必须是静态的

内部类放在局部只能访问局部中用final修饰的局部变量

匿名内部类:

当函数参数是接口类型,而且接口中的方法不超过三个,可以用匿名内部 类作为实际参数进行传递

匿名内部类必须继承一个外部类或实现接口,匿名内部类其实是一个匿名 子类对象

 




 

 

继承:

* JAVA不支持多继承

* 构造方法不能被继承,子类对象生成时如果没有指定调用父类的哪个构造 函数则会先自动调用父类的无参构造函数,再调用自身的构造函数,目 的是子类继承了父类,就获取到了父类的内容(属性),所以使用父类 内容前要看父类是如何初始化父类自身内容的,所以必须访问父类中的 构造函数,如果父类构造函数没有定义无参构造函数,那么子类必须用 super();指定要访问父类的哪个构造函数,super语句必须放在子类构造函 数的第一行,因为父类初始化动作必须先完成

* 子类重写父类方法时,其方法的访问权限不能低于父类

主函数:格式固定,被JVM所识别和调用

public:权限必须最大

static: 虚拟机调用主函数不需要对象(类名.main()

void: 主函数不需要返回值

main: 函数名

String[] args:参数列表

final

修饰变量时该变量成为常量,必须赋值且只能付一次值

修饰方法时该方法在子类中不能被重写

修饰类时该类不能被继承

抽象类:

* 抽象类中不一定都是抽象方法,含有抽象方法的类一定是抽象类

子类必须实现父类所有抽象方法,否则还是一个抽象类

抽象类不能实例化

抽象类有构造方法,用于给子类初始化

* abstract关键字不能和以下关键字共存:

* finalfinal修饰的类不能被继承,抽象类则需要子类继承

* private:抽象类中如果有私有方法,子类无法进行重写

* static:如果成员是静态的则不需要对象就能运行,而抽象方法没有方 法体

接口:接口是一种特殊的抽象类,如果一个抽象类中所有的方法都是抽象的,那 么这个抽象类就是接口,接口与接口间是继承关系,而且接口可以多继承

抽象类和接口的区别:

抽象类需要被继承而且只能单继承,接口需要被实现而且可以多实现

抽象类中可以定义抽象方法和非抽象方法,子类继承后可以直接使用非抽 象方法,接口中只能定义抽象方法,必须由子类实现

抽象类的继承是 is a 关系,定义该体系的基本共性内容

接口的实现是like a关系,定义该体系的额外功能

抽象类描述事物,接口描述事物可以具有的功能

多态:

父类的引用既可以指向父类对象,也可以指向子类对象,程序可以根据当 前指向自动调用不同对象的方法

 

通过父类引用只能访问子类从父类继承过来的成员,不能访问子类特有成

向下转型是为了使用子类特有方法

在转型中自始至终都是子类对象在做类型转换

多态中成员特点:

成员变量:编译和运行时参考引用型变量所属类中是否有调用的成员 变量,有编译通过,没有编译失败

非静态成员函数:

编译时参考的是引用型变量所属类中是否有调用的成员变量

运行时参考的是对象所属的类中是否有调用的函数

静态函数:编译和运行时参考引用型变量所属类中是否有调用的静态 方法,有编译通过,没有编译失败

版权声明:本文为博主原创文章,未经博主允许不得转载。

2018年2月5日训练日记

昨天除了上午做了三道网络流裸题之外就啥也没干。。。于是没写训练日记。。。 今天其实也只是做了几道题而已。感觉对网络流有一定程度的理解了,但是理解的还不够深入。比较简单的题目还是能够完全独立快速的做出...
  • LSD20164388
  • LSD20164388
  • 2018年02月05日 21:20
  • 139

2018年2月1日训练日记

昨天晚上的cf。。。打的非常惨烈。。。只出了3题。。第三题还被hack了一次。。。好歹最后过了。。。D题没想到dp。。。TLE on test 15。。。赛后看了一眼Q神代码。。。把自己的代码改改一下...
  • LSD20164388
  • LSD20164388
  • 2018年02月01日 17:43
  • 190

2018年2月3日训练日记

要理解思想而不是代码!!! 昨天晚上的比赛。重新读了B题。然后发现当时读错题意了(1、乘积号看成和号2、输出n行,以为是一行)。今天读完了之后突然发现好水。立马敲了一遍kmp搞过了。注意的是每个...
  • LSD20164388
  • LSD20164388
  • 2018年02月03日 21:01
  • 124

2018年2月6日训练日记

今天主要的还是做网络流专题里的题目。。。 读了I题后突然发现就是个很简单的拆点最小割。。。刚开始没注意无向图,样例死活过不了,后来知道了以后又想直接在加边的的时候把反向边容量改了,还是过不了样例。。...
  • LSD20164388
  • LSD20164388
  • 2018年02月06日 21:27
  • 93

黑马程序员——学习日记2

异常(Exception) ------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 定义:在运行期间发生的不正常情况,阻止当前方法或作用域继续执行的...
  • afiyo
  • afiyo
  • 2015年09月11日 17:28
  • 186

黑马程序员-学习日记2

黑马程序员-学习日记2  ------http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -...
  • qq_26857297
  • qq_26857297
  • 2015年03月29日 09:10
  • 127

黑马程序员--学习日记2

1.output     我觉得在SQL Server2005之后退出了这个功能真的挺好的。我们再向数据库里面存放一条数据的时候,往往很难知道在即刚存放进去的数据的id号,这是一个主键,是递增的,只...
  • qq175299882
  • qq175299882
  • 2014年05月11日 18:58
  • 272

2015年2月6号工作日志-----------赵鑫

工作日志 日  期 今日工作结果 问题及改善方法 明日计划 2.6 1.将马士兵的java视频 第三章面向...
  • Y_mmmmmmm
  • Y_mmmmmmm
  • 2015年02月06日 21:32
  • 240

2015年2月6日工作日志

 工作日志 时间 工作结果 问题及改善方法 总结及明日工作计划 ...
  • tell_me_
  • tell_me_
  • 2015年02月06日 23:30
  • 166

2017年2月13日实习日记

继续在RHEL7.3上配置环境 编译的内核启动之后没有自动加载相应的内核模块,在ubuntu系统上安装内核之前在一个文件中添加响应内核模块的名字就可以完成这一步。而RHEL7.3上没有这个文...
  • CoderHattonLiu
  • CoderHattonLiu
  • 2017年02月13日 23:08
  • 410
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马程序员日记-2
举报原因:
原因补充:

(最多只允许输入30个字)