`
wang_2011_ying
  • 浏览: 151612 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
finalize()方法不需要显示的调用,在垃圾回收时会被自动先行调用。 该方法的权限是protected或是public,但是不能为private finalize()方法被调用的条件是: (1)显示的调用System.gc()方法; (2)存在new出来的尚未被销毁的匿名的对象;例: class Book{ boolean checkedOut = false; Book(boolean checkout){ this.checkedOut = checkout; } void checkIn(){ checkedOut = false; } protected void ...
break语句不仅可以结束其所在的循环,还可以直接结束其外层循环,此时需要在break之后紧跟一个标签,这个标签用于标识一个外层循环。通常紧跟在break之后的标签,必须在break所在循环的外层循环之前定义才有意义。 (1)一般的continue会退回最内层循环的开头(顶部),并继续执行; (2)带标签的continue会到达标签的位置,并重新进入紧接在那个标签后面的循环; (3)一般的break会中断并跳出当前循环; (4)带标签的break会中断并跳出标签所指的循环; java里需要使用标签的唯一理由是因为有循环嵌套的存在,而且想从多层嵌套中break或continue。
Ctrl+1 快速修复(最经典的快捷键,就不用多说了) Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Ctrl+Alt+↑ 复制当前行到上一行(复制增加) Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了) Alt+↑ 当前行和上面一行交互位置(同上) Alt+← 前一个编辑的页面 Alt+→ 下一个编辑的页面(当然是针对上面那条来说了) Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性 Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后) Shift+Ctrl+Ent ...
Fianl修饰的变量 实例变量必须显式指定初始值,而且只能在如下3个位置指定初始值: 定义final实例变量时指定初始值;在非静态初始化块中指定初始值;在构造器中指定初始值;例1 public class FinalInstanceVariableTest { final int var1 = "疯狂java讲义".length(); final int var2; final int var3; { var3 = "疯狂XML讲义".length(); } public FinalInstanceVariableTest(){ var ...
目录 1. Java基础部分 4 1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 4 2、Java有没有goto? 4 3、说说&和&&的区别。 4 4、在JAVA中如何跳出当前的多重嵌套循环? 4 5、switch语句能否作用 ...
[size=medium]javap 是jdk 自带的一个工具,可以反编译,也可以查看java编辑器生成的字符码,是分析代码的一个好的工具。 要分解class文件,方法:javap [option] class(没有后缀) option: -help 帮助; -l 输出行和变量的表,在这个步骤之前需要运行命令 javac -g class.java,得到javap -l calss 所需要的参数;详见javac-public 只输出public方法和域; -protected 只输出public和protected类和成员; -package 只输出包,public 和protected 类和成 ...
Java2平台包括:标准版(J2SE)、企业版(J2EE)、微缩版(J2ME)三个版本。 Standard Edition(标准版)J2SE包含那些都成java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程。只要用于桌面应用软件的编程; Enterprise Edition(企业版)J2EE包含J2SE中的类,并且还包含用于开发企业级应用的类。比如:EJB、servlet、jsp、xml、事务控制。主要用于分布式的网络程序开发,如电子商务网站和ERP系统; Micro Edition(微缩版)J2ME包含J2SE中的一部分类,用于消费类电子产品的软件开发。比如:呼机、智能卡、手机 ...
class Base{ private int i = 2; public Base(){ System.out.println(this.getClass()); this.display(); } public void display(){ System.out.println("Base中的方法"+i); } } class Derived extends Base{ private int i = 22; public Derived(){ i = 222; } public void display(){ System. ...
class Price{ final static Price INSTANCE = new Price(2); static double initPrice = 20; double currentPrice; public Price(double discount){ currentPrice = initPrice - discount; } } public class PriceTest { public static void main(String[] args){ System.out.println(Price.INSTANCE.currentP ...
Java把内存分成两种,一种叫做栈内存,一种叫做堆内存 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为改变量分配的内存空间,该内存空间可以立刻被另作他用。 堆内存用于存放由new创建的对象和数组。在堆中分配的内存,由java虚拟机自动垃圾回收器来管理。在堆中产生了一个数组或者对象后,还可以在栈中定义一个特殊的变量,这个变量的取值等于数组或者对象在堆内存中的首地址,在栈中的这个特殊的变量就变成了数组或者对象的引用变量,以后就可以在程序中使用栈内存中 ...
Global site tag (gtag.js) - Google Analytics