java,
分享于 点击 23242 次 点评:116
java,
java的三大特点 封装,继承,多态
--知识点1
private 私有的
public 公共的
protected 同包或者子类
friendly 在同包类使用 默认修饰符
--知识点2
System.err.println(); 输出缓冲区 随机打印在一行
--知识点3
封装的好处 有
1.安全性
2.重用
3.不必关心具体实现
--知识点4
this代表当前引用本类
--知识点5
static 关键字
静态方法的好处
可以通过类名调用本类的属性和实例方法
--知识点6
常量必须为大写 关键字为 final
--知识点7
extends 关键字
继承的好处有
1.减少代码和数据的冗余度
2.增加了代码的复用性
3.安全性
--知识点8
java当中只能单继承 不能多继承
--知识点9
abstract 关键字
有抽象方法的一定是 抽象类
有抽象类的不一定 有抽象方法
抽象类可以包含 实例方法 也可以包含抽象方法
--知识点10
interface 关键字
impements 实现接口关键字
接口当中只能包含 赋值的常量 和抽象方法
--知识点11
Throwable超类包含着
1.Error错误 2.Exception异常
异常包括 编译期异常 RuntimeException运行期异常
--知识点12
try{}catch(){} finally{}
有system.exit(数值) finally代码块不执行
finally 在return和throw 运行前执行
--知识点13
迭代器Iterator
iterator.remove必须放在 iterator.next()后面
--知识点14
(collection)
/ \
(List) (Set)
/ | | \
[arrayList] [linkedList] [HashSet] [TreeSet]
|
[LinkedHashSet]
arrayList 有序的 查询获取快 HashSet 无序的 不同步 散列储蓄
linkedList 有序的 增删快 LinkedHashSet 有序的
TreeSet 无序的 做比较
Comparator 比较器 放TreeSet 构造里面
--知识点15
二维数组 必须先定义前面 然后定义后面
int[][] a = new int[3][]; a代表着空NULL 引用类型
a[0] = new int[2]; ------
a[1] = new int[3]; |-----默认值为0 int类型
a[2] = new int[2]; ------
--知识点16
泛型
<?>是<? extends Object>的简写
方法,addAll<? extends Animal> 只能接收Animal或者Animal的子类
Comparator<? super Animal> comparator) 只能接收Animal或者Animal的父类
泛型接口 看知识点14
<? extends Animal> 只能接受Animal或者Animal的子类
<? super Dog> 可以接受Dog和 **他父类的子类 包括父类**
方法泛型
定义
private static <M> void add(M m){};泛型定义在 返回值前面
调用 类名.<String>add("1");写在调用前面
--知识点17
HashMap , TreeMap 无序的
LinkedHashMap,有序的
--知识点18
代码块区域{...}运行完之后自动回收
局部代码块{...}运行完之后自动回收
构造代码块{...}对象初始化 先执行构造代码块
静态代码块{...}对类做 初始化 先执行静态代码块 按顺序执行
--知识点19
内部类:
class Animal{
class Eat{
}
}
实例方法
Animal.Eat eat = new Animal().new Eat();
也可以通过创建方法new
局部内部类
class Animal{
public void show(){
final int a = 5; //局部内部类 调用局部方法必须为 Final 常量
class Eat{
system.out.print(a);
}
}
}
匿名内部类
interface ABC{
void a();
}
public class Test {
public static void show() {
int A = 5;
System.out.println("abc");
new ABC() {
@Override
public void a() {
System.out.println(1008611 + A);
}
}.a();
}
public static void main(String[] args) {
Test.show();
}
}
局部内部类 和 匿名内部类
中不可以写static
非静态内部类不能定义静态成员
--知识点20
public class Test {
public static void main(String[] args) {
Outter outter = new Outter();
outter.new Inner().print();
}
}
class Outter
{
private int a = 1;
class Inner {
private int a = 2;
public void print() {
int a = 3;
System.out.println("局部变量:" + a);
System.out.println("内部类变量:" + this.a);
System.out.println("外部类变量:" + Outter.this.a);
}
}
}
结果是 3 , 2 , 1
路径:C:\ProgramData\MySQL\MySQL Server 5.6
相关文章
- 暂无相关文章
用户点评