1. IDE
- eclipse 纯 Java 开发 Java EE版,实习用
- myeclipse 适合 J2EE 开发,但是软件如果商用要收费
- Intellji 有很多前端的插件,很好用
项目路径不要有中文或者空格,以防万一
2. Java 注释 和 javadoc 命令
编程语言的基本学习过程
A 基本语法
1. 数据类型 (Java 静态,Python 动态)
基本类型 8 种
六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
- 布尔型:boolean 1
- 字符型:char 8
- 整型: byte 8 short 16 int 32 long 64 默认 int
- 浮点型: float 32 double 64 浮点数的存储
引用数据类型 class XX { }
2. 标识符命名规则
声明变量 数据类型 变量名(标识符) int a;
- 字母 数字 _ $
- 不能以数字开头
- 大小写敏感
- 没有长度限制 <=15 chars 有点编程语言有长度限制
- 不能是关键字、保留字
- 也可以写中文
关键字:会高亮显示的
保留字:java出现比c晚,虽然没有用到c的关键字,但是保留了这些,比如 goto
3. 两种变量
局部变量
- 方法里面 { } 里面
- 作用范围
- 需要初始化,不然不能输出
实例变量
- 类中直接声明
- 作用范围
- 默认初始化 int 0, 类成员 null
变量 instanceof 类名 判断是不是这个类
4. 数组声明
数据类型 [] 变量名;
数据类型 变量名[];
分配空间 变量名 = new 数据类型[length];
B 编程思想
1. 面向对象 oop
事物 - 抽象 - 类
// 特点 抽象成 属性
// 构造器 也可以重载
// 行为 抽象成 方法
2. 区分重载和重写
方法的重载
- 方法名相同
- 参数类别不同:顺序,个数,类型
- 返回值类型可以相同,可以不同
方法的重写
- 父子类中
- 方法名相同,参数列表相同,返回值类型“相同”
- 访问不能被扩大
- 异常不能被缩小
3. 封装:数据隐藏
- 属性封装,用private限制外部访问
- 行为封装,不用清除方法实现细节
4. 继承:代码复用 extends
但是会破坏封装,因为父类的方法在子类继承的时候可能会被子类重写就破坏了封装
is a 的语义关系
- 属性可以继承(但是父类的private属性不能访问)
- 方法可以继承
- 构造器不能被继承,子类的构造器
5. 多态:相同类型的不同对象在执行相同方法时结果不一样
- 编译时多态 会被编译器检测出来
- 运行时多态
C 特殊关键字
1. static 修饰
- 类的属性 和 方法
- 匿名块
- 静态导入
2. final 修饰
- 类 不能被继承 比如 System 类,类下的方法都不能重写,不能破坏封装
- 属性 只能在声明的时候初始化一次值
- 方法 父类的 static 方法子类不能重写 比如 Object.getClass 方法
- 局部变量 -> 常量
public final native Class<?> getClass();
3. abstract 修饰 不能实例化对象
- 类 抽象类
- 方法 只有声明,没有内容
4. interface 接口 可以定义抽象方法
面向接口编程,可扩展性,方便后期修改