【JavaSE】Java中常用名词及概念

来源:互联网 发布:轩辕网络百度百科 编辑:程序博客网 时间:2024/05/21 10:36
面向对象
封装:解耦,属性私有,setget
抽象:注意建模
继承:extends,不单单是为了代码复用。(如果仅为了代码复用,应使用组合),是为了维系整体架构
多态:把子类当做父类使用。设计方法时,形参声明为父类类型,在方法中指针对父类编写功能调用,方法调用时传入不同的子类,调用效果不同。

构造函数:用来实例化对象,组合,包装

static
静态变量:被所有实例共享,类加载时初始化
静态方法:类加载完成就可调用,不需要创建实例。内部不能直接访问外部非静态成员,工具类,抽象类。单态中用于返回类的实例
静态代码块:类加载时执行,用于初始化工作
静态内部类:不能访问外部类非静态成员

单态设计模式
一个类在程序运行期间只存在一个实例
实现:构造函数私有、私有变量记住一个类的实例对象,提供公有的getInstace()返回成员变量

继承
1、子类会自动复用父类的方法
2、可以把一个子类实例当父类类型来用,调用方法时,是调用子类的方法,访问属性时是访问父类的(静态绑定,在编译阶段完成变量绑定),如果要用子类特有方法,要强转,使用instanceof判断一下对象的类型
3、子类在实例化过程中一定会调用父类的一个构造函数,在子类构造函数的第一行用this(实参)调用自己其他的构造方法,super(实参)调用父类的某个构造方法,如果第一行什么都没写,默认调用父类无参的super()

抽象类 abstract
没有方法体的方法必须声明为抽象方法
含有抽象方法的类必须为抽象类
继承抽象类需要实现所有抽象方法
作用:一系列的类具有相似的功能,方法会有一样的声明,即使实现不太一样,也应抽象出一个父类,实现部分代码复用,为多态服务。

接口
特殊的抽象类,所有方法都是抽象的,默认public
可多重实现,implements
接口可以继承接口使用extends关键字
方法默认都是public abstract的
变量默认都是常量,即 public static final

匿名内部类
new 父类(){
     //定义
}
不能使用extends继承父类,本身是声明类型的子类实例

final
final类不能被继承
final方法不能被重写
final变量为常量

@Override
子类覆盖父类的方法
方法名相同,参数列表相同,返回值类型一般相同,但也允许用子类代替父类

集合
遍历
1、for循环,用get()和size
2、Iterator迭代器迭代
3、使用增强的for循环迭代

HashSet
Set实现类,哈希算法保证无重复元素,高效,不保证有序
TreeSet
二叉树原理保证无重复,并排序
1、元素自然顺序排序,要求元素对象实现Comparable接口的compareTo方法
2、按比较器排序,实现comparator接口的compare方法

HashMap
线程不安全
两种遍历方式:1、先获得所有Key(map.keySet())再取value
                      2、先遍历所有键值对(map.entrySet()),再分别取key和value

Properties
用于读写配置文件,hashTable的子类
不能直接用中文,中文会以编码的形式存储
使用Enumeration迭代
0 0
原创粉丝点击