byte 字节 数据结构占八位
java知识点
@为标签可以理解为注释
2.
接口的作用就是固定功能的作用,接到该接口的函数叫做接口的实现,也就是实现该接口可以实现的特定类型的功能。
接口需要实现,实现之后进行new实例化,实现在我看来就是把具体功能接在接口上。
接口必须先声明后实现,接口可以继承。
3.
匿名类因为匿名,所以可以在实例化,即new的时候直接{},{}内可以重写匿名类的函数,相当于继承后重写父类函数。
如上图所示,就是匿名类,匿名类的意思是子类在继承父类时候子类没有名字,直接使用父类的名字实例化子类,并且子类进行了重写父类函数。
4.
成员内部类可以无条件访问外部类的属性和方法,但是外部类想要访问内部类属性或方法时,必须要创建一个内部类对象,然后通过该对象访问内部类的属性或方法。
5.
A. 无论synchronized关键字加在方法上还是对象上,如果它作用的对象是非静态的,则它取得的锁是对象;如果synchronized作用的对象是一个静态方法或一个类,则它取得的锁是对类,该类所有的对象同一把锁。
B. 每个对象只有一个锁(lock)与之相关联,谁拿到这个锁谁就可以运行它所控制的那段代码。
C. 实现同步是要很大的系统开销作为代价的,甚至可能造成死锁,所以尽量避免无谓的同步控制。
java和c++细节区别
链接: link
C++:bool Java:boollen
C++:main函数无参数 Java :main函数传入String[] args
C++:cout Java:System.out.println()
java在使用各类数据结构的时候需要new一下然后赋值,而c++不需要,c++只有一个在new 一个stuct结构时候才需要。
C++:一个类可以继承多个类 Java:一个类不可以继承多个类
C++:类,struct后面均需要写;,但是java类后不需要封号,函数均不需要封号
Java和C++的相同之处
ava也可以直接使用下标读取vector的元素
Java的泛型就是C++模板相关的东西
重写 、重载、覆盖、接口、函数模板
重写 主要是为了子类同函数实现自己的功能
重载 是为了类的同一函数实现同类不同功能
覆盖 直接覆盖,原函数不能再使用
接口 首先要申明(固定插槽),然后实现插槽下的功能
函数模板和重载的区别在于函数模板只有函数参数类型不同且功能基本相同,而重载不单是参数类型不同这一种,而且实现的也是相似的功能
接口与重载区别在于接口可以制定一个规范并且实现解耦,
还是属于类之间的范畴,而重载是在类内部。
接口与重写的区别在于重写必须有父类,子类去重写父类,而接口主要是为了直接的多个同级类对接口实现