- ------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
1. 第十一天回顾
接口
定义interface,固定写法变量和方法
实现类implements接口,重写抽象方法,建立实现类对象
类的多实现,接口之间的多继承
抽象类和接口区别,isa like a
内部类
三种访问格式!
局部的内部类,访问局部变量,加final
匿名内部类
XX x = new XXX(){
重写方法
}
包,导入包
注意就是,包名.类名 权限
import 导入需要的类 导包
2. 第十二天学习内容。jar包 jar命令。 开发工具eclipse,使用方法,和技巧。Object类的特性,三个toString() finally() equals()
3. Jar包
java中的压缩包,和Windows中的压缩包意思几乎一样
好处:方便携带,方便使用,使用的数据库驱动程序,SSH源代码,以Jar压缩文件提供的
生产Jar压缩包,命令 jar -cvf Jar包的存储位置被压缩的包
c 创建文件 v 创建的相信信息 f指定存储位置
解压缩 jar命令 jar -xvf jar包的文件c:\haha.jar
4. 开发工具介绍(IDE 集成开发环境)
为什么使用开发工具
高效,提升开发效率
降低开发成本
降低错误,程序人员压力减轻
介绍几个Java开发工具
美国Borland公开,JBuilder,收费的,扩展性太差2007
美国Sun公司自己的开发工具NetBeans 免费,开源,中文版,奇慢无比
美国IBM公司 eclipse 免费,开源,扩展性强3.7indegio 4.2Juno 4.4Kapler 4.5Luna
美国MyEclipse , 就是eclipse的一个插件,收费的
5. 首次运行eclipse
选择一个工作空间select a workspace
工作空间,就是一个文件夹子,指定好以后,所有的程序,都会被存储到这个文件夹,查找文件
workspace包含两个内容,第一个我们写所有程序,第二个eclipse自己的配置文件,经常使用的操作,存储起来
请你关闭欢迎页面
6. 编写第一个Hello World程序
创建工程(天数)-- File -- new -- project -- java project --next -- 定义工程名字,天数--finish -- yes
创建包 -- 工程上 鼠标右键 -- new -- package-- 写包名 -- finish
创建类 -- 包上 鼠标邮件 -- new -- class-- 写类名 -- finish
创建好的工程目录
src 存储的是写的源文件 .java
bin 存储的是编译后的字节码文件 .class
7. 安装插件
eclipse安装插件的两个方式
第一个,直接复制,不推荐
第二个,外挂文件:eclipse程序目录下,创建文件夹links -- 新建一个记事本(文件名写英文名字,不要使用敏感词) -- 记事本写一行命令 path=插件的目录
卸载插件,清理缓存 eclipe -- configuration -- 删除update
8. 调正代码样式
代码字体:window-- preferences -- general -- app -- color and fonts -- java -- java editor textfonts -- edit
控制台字体:window-- preferences -- general -- app -- color and fonts -- debug -- console font --edit
9. 视图和视窗
视图,是由很多视窗组成
视窗实现功能,可以操作的界面
包资源浏览器(packageexplorer) 创建,管理,类,包的工具
开启窗口--window-- show view
大纲视图(outline)
展示,类中所有成员 文字和符号同时表示
红色空心:私有成员变量
蓝色空心:默认成员变量
黄色空心:受保护成员变量
绿色空心:公共成员变量
红色实心:私有方法
蓝色实心:默认方法
黄色实心:受保护方法
绿色实心:公共方法
控制台 console 输出结果
10. 取消鼠标悬停效果
window -- preferences -- java -- editor --hovers -- 右侧第一个勾不要
如果需要悬停效果,点击需要的内容代码,按下F2
11. 取消程序中的多余注释
window -- preferences -- java -- code style --code template -- code
12. eclispe快捷键
l 内容辅助快捷键 ALT+/ 完成自动补全代码. 可以自定义:Window-- preferences -- java -- editor -- tamplate
l 单行注释 CTRL + / 进行注释,打开注释
l 多行注释 选中注释行 CTRL + Shift + / 取消不需要选中 CTRL + Shift+ \
l 单行删除 CTRL + D
l 复制当前行在上或在下CTRL + ALT + 上或者下箭头
l 移动当前行 ALT + 上或者下箭头
l 意见与建议提示快捷键CTRL + 1 处理小叉子的情况
l 导入包快捷键 CTRL +Shift + o
l 代码格式化 CTRL +Shift + f
l 抽取方法快捷键 ALT +Shift + m
13. eclipse中的代码生成
创建类的时候直接生成:接口和实现类
自己手动选择生成:
get and set -- 类中,鼠标右键 -- source
构造方法 -- 类中,鼠标右键 -- source
14. 工程的导入和导出
包资源浏览器 -- 鼠标右键 --import -- general -- exi ----workspace
导出,生成帮助文档 -- 包资源浏览器工程上 -- 鼠标右键 -- export-- java
15. java.lang.Object类
Object类是Java中所有类的父类,一切类都直接或者间接继承Object类
接触JDK核心类库的源代码
native 本地,这是一个本地方法,运行在另一个内存区域,本地方法栈。调用本机操作系统中的功能
native修饰的方法,不是Java编写,方法是C/C++编写,保密的
16. Object类方法 toString
public StringtoString(){} 是我们的老朋友了
在输出语句中systemout println 输出的是一个对象,自动调用该对象的toString()方法
sop(p) == sop(p.toString())
public StringtoString(){
returngetClass()+"@"+Integer.toHexString(hashCode());
}
int hashCode()是Object类自己的方法,运行结果是一个十进制数,内存的地址
toHexString(十进制) 计算结果就是十六进制
看地址,没有意义,重写Object类的toString()方法,建立自定义的对象字符串
重写的依据:成员变量,做到将类中所有的成员变量连接变成字符串,返回
17. Object类方法 finalize
这个方法作用,对象变成内存的垃圾后,JVM收取垃圾的时候,调用这个方法
实际开发中,没有什么意义,面试题:
final finally finalize
18. Object类方法equals
java认为,所有的对象,都具备比较性,因此Object中,定义了一个比较对象的方法equals
重写equals方法,建立对象的自己的比较方式,不比较内存地址,比较的是对象的成员变量的值。
重写的依据就是类的成员变量
面试题: == equals的区别
== 比较运算符比较基本数据类型,比较具体数值是否相等
== 两边是引用数据类型,比较的是两个对象的内存真实地址
equals是Object一个方法,比较对象的
默认情况下,比较的是两个对象的真实地址
覆盖euqals方法,建立对象的自己的比较形式
案例equals 是有漏洞,找漏洞,解决 线索是 (Object obj)
p1.equals(p2)