`
qf4356
  • 浏览: 3037 次
  • 性别: Icon_minigender_1
  • 来自: 蚌埠
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
ArrayList和Vector都是以数组方式存储数据的,因此可以直接索引查找元素数据(效率高),但是插入或者删除元素时需要大量移动插入位置后的数据,所以插入删除元素的效率比较低; Vector中的方法使用synchronized修饰,所以Vector是线程安全的容器,但是性能相较ArrayList比较差,已经是历史遗留容器;   LinkedLsit是以双向链表方式存储数据元素的,将内存中零散的内存单元通过附加的引用关联起来,形成一个可以按照序号索引的线性结构,这种链式存储方式相较于数组存储方法,内存利用率更高,按照序号索引数据需要向前或者向后遍历,插入或删除数据只需要修改本项的前后项 ...
不可以,静态只能调用静态的 非静态方法调用需要实例对象,静态方法调用时该实例对象可能并没有被初始化
静态变量属于类,是类变量,不属于类对象,不论多少个类对象,静态变量在内存中只存在一个拷贝,让这些类对象共享   实例变量必须依附于类的实例对象存在,需要先创建对象再访问实例变量
不能是static的,抽象方法需要子类重写,但是static方法不能被子类重写 所谓静态就是指:在编译之后所分配的内存会一直存在(不会被回收),直到程序退出内存才会释放这个空间 因为静态方法从程序开始运行后就已经分配了内存,也就是说已经写死了。所有引用到该方法的对象(父类的对象也好子类的对象也好)所指向的都是同一块内存中的数据,也就是该静态方法。子类中如果定义了相同名称的静态方法,并不会重写,而应该是在内存中又分配了一块给子类的静态方法,没有重写这一说 不能是native的,本地方法是由本地代码(如c代码)实现的方法,抽象方法是没有实现的 不能是synchronized的,sync ...
抽象类和接口都不能被实例化,但是可以定义抽象类和接口类型的引用 一个类如果继承抽象类或者实现接口就要重写所有抽象方法,否则就要把该类声明为抽象类 抽象类有构造方法,接口没有构造方法,抽象类的构造方法可以被子类使用super关键字调用 抽象类中的成员可以是public,private,默认,protected的,而接口中的成员都是public的 接口中的方法都是抽象的,抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类
Java中使用垃圾回收机制进行内存管理。Java中给对象在堆内存上分配内存(基本数据类型除外),然后由GC负责自动回收不再使用的内存 Java中对内存对象的访问,使用的是引用的方式。在代码中维护引用变量,以此可以访问内存 ...
  静态内部类可以不依赖外部类实例被实例化,内部类则需要外部类的实例完成实例化;   静态内部类不可以访问外部类非静态成员(可以创建外部类的对象来访问),内部类可以访问外部类的所有成员;   静态内部类的成员可以是静态的,内部类的成员不能是静态的;   静态成员的加载是在类加载时完成的,内部类是在外部类编译完成后再开始编译的,所以编译时还没有加载内部类就已经加载静态成员了,这显然不合理
Global site tag (gtag.js) - Google Analytics