Java基础精讲:葵花宝典2012版
4星 · 超过85%的资源 需积分: 10 17 浏览量
更新于2024-07-25
收藏 516KB DOC 举报
"Java葵花宝典2012版"
Java作为一门广泛使用的编程语言,其基础知识至关重要。以下是一些从《Java葵花宝典2012版》中提炼的关键知识点:
1. Java源文件:一个.java源文件可以包含多个类,但只能有一个公开的(public)类,其他类可以是非公开的。
2. goto关键字:Java中没有goto关键字,它被设计为无goto语言,以提高代码的可读性和可维护性。
3. &和&&的区别:&是逻辑与运算符,无论两边条件如何都会执行;而&&是短路与运算符,如果左边条件为假,右边的表达式将不会被执行。
4. 跳出多重循环:可以使用break语句配合标签(label)跳出多重嵌套循环,例如:`label: for {...} for {...} break label;`
5. switch语句:在Java 7之前,switch不支持byte、long和String,但在Java 7及以后版本中,switch可以支持String。
6. short变量:对于short s1=1; s1=s1+1; 这样的代码,会有类型提升问题,需要显式转换。而s1+=1则会自动处理类型提升。
7. char类型:char类型可以存储一个Unicode字符,因此可以存储中文汉字。
8. 有效率计算2乘以8:`int result = 1 << 3;` 或 `int result = 2 * 8;`
9. 一百亿的计算器:设计计算器时,要考虑大整数的处理,可能需要使用BigInteger类。
10. final关键字:final修饰的变量,其引用一旦赋值后不可改变,对于引用类型,这意味着引用的对象不能变,但对象的属性可以变。
11. "=="与equals方法:"=="用于比较基本类型和对象的引用是否相同,而equals方法用于比较对象的内容是否相等。
12. 静态变量与实例变量:静态变量属于类,所有实例共享;实例变量属于对象,每个对象有自己的副本。
13. static方法:不能直接访问非static方法或变量,因为非static成员需要对象实例才能访问。
14. Integer与int:Integer是int的封装类,存在自动装箱拆箱操作,Integer对象具有缓存机制,int是原始类型。
15. Math.round:Math.round(11.5)等于12,Math.round(-11.5)等于-11。
16. 代码不妥之处:可能涉及未初始化的变量、异常处理、类型转换等问题。
17. 作用域:public(公共)、private(私有)、protected(受保护)和默认(包级私有),决定了类成员的访问权限。
18. Overload和Override:Overload是方法重载,允许同一类中有多个同名但参数列表不同的方法;Override是方法覆盖,子类重写父类的方法。
19. 构造器:构造器不能被override,但可以重载。
20. 接口与抽象类:接口可以继承接口,抽象类可以实现接口,但不能继承具体类;抽象类可以有静态的main方法。
21. clone方法:通常在实现Cloneable接口的类中,clone方法会包含`super.clone()`以创建对象副本。
22. 面向对象特征:封装、继承、多态。
23. 多态机制:通过方法的重写(Override)和向上转型(Upcasting)实现。
24. abstractclass与interface:抽象类可以有方法实现,可以有字段;接口只有方法声明,字段默认为public static final。
25. abstract、static、native、synchronized:抽象方法不能是static,也不能是native,但可以是synchronized。
26. 内部类:内部类是定义在另一个类内部的类,分为静态嵌套类(StaticNestedClass)和非静态嵌套类(InnerClass)。静态嵌套类像普通类一样使用,而内部类需要外部类的实例。
27. 内部类与包含类的关系:内部类可以直接访问包含类的所有成员,包括私有成员,但内部类不能声明为static。
28. 匿名内部类:无需定义名称,常用于快速实现一个接口或继承一个类的简短代码,通常用在事件处理器或一次性使用的类中。
以上内容只是《Java葵花宝典2012版》中的一部分,涵盖了Java的基础语法、面向对象特性、类和接口的使用、内存管理和多态等多个方面,旨在帮助读者深入理解和掌握Java编程。
2013-11-28 上传
2019-09-17 上传
2022-06-10 上传
2021-10-01 上传
2021-10-01 上传
2020-01-28 上传
dnktty
- 粉丝: 4
- 资源: 39
最新资源
- Java毕业设计项目:校园二手交易网站开发指南
- Blaseball Plus插件开发与构建教程
- Deno Express:模仿Node.js Express的Deno Web服务器解决方案
- coc-snippets: 强化coc.nvim代码片段体验
- Java面向对象编程语言特性解析与学生信息管理系统开发
- 掌握Java实现硬盘链接技术:LinkDisks深度解析
- 基于Springboot和Vue的Java网盘系统开发
- jMonkeyEngine3 SDK:Netbeans集成的3D应用开发利器
- Python家庭作业指南与实践技巧
- Java企业级Web项目实践指南
- Eureka注册中心与Go客户端使用指南
- TsinghuaNet客户端:跨平台校园网联网解决方案
- 掌握lazycsv:C++中高效解析CSV文件的单头库
- FSDAF遥感影像时空融合python实现教程
- Envato Markets分析工具扩展:监控销售与评论
- Kotlin实现NumPy绑定:提升数组数据处理性能