数字类赋值0;char类型赋值'\u0000'; boolean类型赋值false;引用对象赋值null;
注意的是在方法之外的类变量的值是自动赋初始值,而方法内的局部变量必须手工初始化。
| class AA{ int num; void test(){ int j; j =5;//没有这一行则编译不会通过。 j = j+num; } } |
这个点经常在求职笔试题目中出现。default放在最上边编译没问题;碰到符合分支的,如果没有break会一直向下运行。
| public class tt{ public static void main (String args[]){ tt t = new tt(); t.test(2);//可改变成3运行一下看一下结果 } void test(int i){ switch (i){ default: System.out.println("default"); case 1: System.out.println("111"); break; case 2: System.out.println("222"); break; } } } |
8、关于java中的label使用
| ? break [label] ? continue[lbele] ? lable: statement; //这里的statement必须是一个loop循环 public class tt{ public static void main (String args[]){ tt t = new tt(); t.test(); } void test(){ System.out.println("0000"); lb1:for (int i=0;i<10;i++){ lb2:for (int j=0; j<2; j++){ if (i==2) continue lb1; System.out.println("i="+i +" j="+j); } } System.out.println("111111"); } } 9、类型转换校正 class Employee | class Manager |
向上校正,总是允许的,Manager直接使用父类Employee的方法。
向下校正,必须用instanceof检验,才能将一个Employee转换为Manager对象。
| public void test(Employee e){ if (e instanceof Manager){ Manager m = (Mnager)e; ... } } |
方法重载(overloading)一定要求名字相同,参数不同,返回类型可以相同也可以不同
| class A{ void test(int i){ } } class AA extends A{ int test(int i, int j){ return 5; } } |
| class A{ void test(int i){ } } class AA extends A{ public void test(int i){//若是换成private则编译不通过。 } } |
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 计算机和网络技术基础知识 (591篇文章)
- 系统优化大全 (18122篇文章)
- 系统安全设置 (23570篇文章)
- 电脑知识 (6529篇文章)
- 系统安装手册 (20845篇文章)
- 系统备份专题 (17556篇文章)
- Java环境安装配置 (5640篇文章)
- 系统维护手册 (16946篇文章)
- Solaris基础知识入门 (4637篇文章)
- Java编程开发手册 (8291篇文章)
- J2SE综合:浅谈java程序发布之 jre 篇 (11次浏览)
- JAVA代码中使用魔法数值 (8次浏览)
- Hibernate缓存管理 (6次浏览)
- JAVA代码应该流畅和结构化 (5次浏览)
- Java JVM设置对性能的影响 (4次浏览)
- 开发框架:深入了解 Struts Validator (3次浏览)
- Java中的通信机制及与C/C API的集成 (1次浏览)
- 用Hibernate实现领域对象的自定义字段 (1次浏览)
- Java语言入门 简述Java语言回收机制 (0次浏览)
- 2008年Java开发者最迫切的五个期望 (0次浏览)



