Core Java学习笔记:基础与实战
需积分: 1 19 浏览量
更新于2024-09-12
收藏 113KB TXT 举报
"corejavaNote"
本笔记主要涵盖了Java的基础学习,包括了Sun的SCJP、SCJD、jdbc、swing等核心Java技术,并扩展到JAVA EE的相关内容如Servlet、JSP和EJB。以下是对这些知识点的详细说明:
1. **主方法**:
Java程序的入口点是`main`方法,其定义为`public static void main(String[] args)`。它是每个Java应用程序执行的起点。
2. **打包与部署**:
在Eclipse中,可以通过菜单选择导出jar文件,通过设置main class并完成向导来创建可执行的jar包。生成的jar文件可以通过`java -jar`命令运行,或者创建一个shell脚本(sh)来执行。
3. **注释**:
注释在Java中用于解释代码,有三种类型:单行注释(//)、多行注释(/* ... */)和文档注释(/** ... */)。文档注释特别用于生成API文档,可以使用`javadoc`工具将其转换为HTML格式。
4. **javadoc**:
`javadoc`命令用于从源代码中提取文档注释,生成规范的API文档。使用格式为`javadoc [options] [packagenames] [sourcefiles] [@files]`。
5. **命名规范**:
- 类名首字母大写,如`MyFirstClass`。
- 接口名也遵循类的命名规则,如`Weapon`。
- 变量名驼峰命名,如`isWoman`。
- 常量全大写,单词间用下划线分隔,如`GREEN`、`HEAD_COUNT`。
6. **包管理**:
使用`import`语句导入所需包,例如`import java.util.*;`导入`java.util`包下的所有类,而`import java.lang.*;`导入`java.lang`包下所有类。注意避免使用`*`通配符导入,以保持代码清晰。
7. **垃圾回收**:
虽然可以调用`System.gc()`或`Runtime.getRuntime().gc()`请求垃圾回收,但通常不推荐这样做,因为垃圾回收器的工作应该由JVM自动管理。
8. **编译与运行**:
使用`javac`命令编译.java源文件,生成.class字节码文件。运行Java程序时,使用`java`命令指定主类。
9. **访问修饰符**:
- `public`:任何地方都可以访问。
- `private`:仅在同一个类内部可访问。
- `protected`:同一包内及子类可访问。
- 默认(无修饰符):同一包内可访问。
10. **类和接口**:
- 类可以实现接口,接口之间可以多继承。
- 实现接口的类必须提供接口中所有非默认方法的实现。
- 类可以继承单一的超类,但可以实现多个接口。
11. **常量和变量**:
- `final`关键字声明的变量一旦赋值后不可更改。
- 静态变量(`static`)属于类,而非实例,所有实例共享同一静态变量。
- 实例变量(非静态)属于类的每个实例。
12. **Java Beans规范**:
- 对象属性通常通过getter和setter方法进行访问和修改,符合JavaBeans规范。
- 可以有`is`开头的方法用于布尔属性,如`isWoman()`。
13. **包的使用**:
- 一个源文件只能包含一个公共类(public class),且该类的名称应与文件名相同。
- 同一包内的类可以直接访问,不同包需要导入。
- 源文件的目录结构应与包结构匹配,以正确编译和运行。
14. **编译和运行流程**:
- 编译:`javac`命令将.java文件编译成.class字节码文件。
- 运行:`java`命令加载类并执行主方法。
- 引用:如果需要使用其他类,确保它们在同一目录或正确导入。
15. **异常处理**:
- Java中的异常处理通过`try-catch-finally`块进行,可以捕获并处理运行时错误。
- `throw`关键字用于抛出异常,`throws`用于声明方法可能抛出的异常。
16. **输入输出**:
- `Scanner`类常用于从控制台获取用户输入,例如`Scanner scanner = new Scanner(System.in);`。
17. **J2EE技术**:
- Servlet处理HTTP请求,JSP用于动态生成HTML。
- EJB(Enterprise JavaBeans)用于构建企业级应用,包括会话bean、实体bean和消息驱动bean。
通过以上内容,你可以全面了解Java的基础知识以及部分进阶特性,这对于学习和掌握Java编程非常有帮助。
2024-12-25 上传
2024-12-25 上传
2024-12-25 上传
2024-12-25 上传
点滴田敏
- 粉丝: 0
- 资源: 1
最新资源
- shaynelarocque.github.io:shaynelarocque.github.io
- find_unused_open_ports
- 【WordPress插件】2022年最新版完整功能demo+插件2.2.1.zip
- Data-Science-IIHT:IIHT数据科学日志和工作表
- DOTween Pro v0.9.290.zip
- Club-management
- stinedeck:使用Flask,Python,MongoDB和Javascript jQuery创建的数字抽认卡应用程序
- PhotoshootMap
- WheelPicker:轮选择器
- spring-2021-work-Blua2:GitHub Classroom创建的spring-2021-work-Blua2
- Lucille MPD client:音乐播放器守护程序的客户端-开源
- micr1
- simple-cv
- 分数阶傅里叶变换.zip
- ci-app
- Entity_Resolution_Service_Intermediary_OSGi