下面博客转载自别人的,我也是被这个问题坑了快两天了,关于各种虚基类,虚继承,虚函数以及数据成员等引发的一系列内存对齐的问题再次详细描述 先看下面这片代码。在这里我使用了一个空类K,不要被这个东西所迷惑,我使用这个空类的目的主要是为了让它产生虚基类表指针而又不引入虚基类成员变量,这样我就可以少叙述一些 ...
分类:
编程语言 时间:
2017-09-26 23:40:19
阅读次数:
197
为什么equals() 方法需要重写?判断连个对象在逻辑上是否相等,如果根据类成员变量来判断两个的实力是否相等,而继承Object中的 equals 方法只能判断两个引用变量是否是同一个对象。这样我们往往需要重写 equals()方法 我们向一个没有重复对象的集合中添加元素时,集合中存放的往往是对象 ...
分类:
编程语言 时间:
2017-09-24 11:44:57
阅读次数:
178
抽象类和接口的区别:A:成员区别 抽象类: 成员变量:可以变量,也可以常量 构造方法:有 成员方法:可以抽象,也可以非抽象 接口: 成员变量:只可以常量,默认修饰符:public static final 成员方法:只可以抽象,默认修饰符:public abstract 建议:自己手动给出。 所以可 ...
分类:
编程语言 时间:
2017-09-17 01:27:24
阅读次数:
258
1 目录 2 线程概述 3 线程的定义 4 线程的启动 5 线程的状态 6 线程的方法属性 1.线程概述 线程是一个程序的多个执行路径,执行调度的单元,依托于进程的存在。线不仅可以共享进程的内在,而且还拥有一个属于自己的内存空间,这段内存空间就是线程栈,是在建立线程时系统分配的,主要用来保存线内部所 ...
分类:
其他好文 时间:
2017-09-14 12:01:47
阅读次数:
135
恢复内容开始 定义变量的语法: 数据类型 变量名=值 变量根据在类中定义位置的不同,分成两大类: 成员变量:全局变量/字段(Field),不要称之为属性(错误)。直接定义在类中,方法外面。 1):类成员变量 使用static修饰的字段。 2):实例成员变量 没有使用static修饰的字段。 局部变量 ...
分类:
编程语言 时间:
2017-09-10 16:47:47
阅读次数:
232
static 关键字可以修饰成员变量,被static修饰的成员变量归属于类static关键字可以修饰成员方法;被static修饰的成员方法可以直接使用类名调用,也可以通过对象调用,建议使用类名。非静态的方法只能通过对象才能调用静态的方法可以通过类名直接调用,也可以通过创建对象,使用对象名进行调用。静 ...
分类:
其他好文 时间:
2017-09-06 00:40:26
阅读次数:
105
继承的基本概念: (1)Java不支持多继承,也就是说子类至多只能有一个父类。 (2)子类继承了其父类中不是私有的成员变量和成员方法,作为自己的成员变量和方法。(3)子类中定义的成员变量和父类中定义的成员变量相同时,则父类中的成员变量不能被继承。(4)子类中定义的成员方法,并且这个方法的名字返回类型 ...
分类:
编程语言 时间:
2017-08-30 00:47:16
阅读次数:
244
继承 概述:日常生活中儿女总会继承长辈的遗产,java语言也是。通过继承多种实物之间形成一种关系。 特点: ①一个类只能继承一个父类 ②一个父类可以有多个子类 ③可以多层继承(a类继承b类 C类继承a类) 成员变量特点:(就近原则) ①.如果子类没有需要的成员变量,子类可以使用父类的成员变量。 ②. ...
分类:
其他好文 时间:
2017-08-23 17:33:53
阅读次数:
125
1.类成员变量(又叫静态成员变量,即是用static修饰的变量(属性)). 2.静态代码块(多次new同一个类对象只会执行一行). 3.成员变量 4.代码块 5.构造方法 ...
分类:
其他好文 时间:
2017-08-21 10:28:32
阅读次数:
155
1.面向对象的思想 面向对象是基于面向过程的编程思想. 面向过程:强调的是每一个功能的步骤 面向对象:强调的是对象,然后由对象去调用功能 特点 是一种更符合我们思考习惯的思想 可以将复杂的事情简单化 将我们从执行者变成了指挥者 角色发生了转换 定义一个学生类 定义一个手机类 2.成员变量和局部变量的 ...
分类:
编程语言 时间:
2017-08-12 12:43:14
阅读次数:
254