信息的封装和隐藏
- Java中通过将数据声明为私有的(private), 再提供公共(public)方法:getXXX()和setXXX()实现对该属性的操作,以实现下述目的:
- 隐藏一个类中不需要对外提供的实现细节;
- 使用者只能通过事先定制号的方法来访问数据,可以方便地加入控制逻辑,限制对数显的不合理操作;
- 便于修改,增强代码的可维护性;
- 当存在显示构造方法时,类就没有默认的无参构造了,而是要使用显示的构造。
四种访问权限修饰符
- 同一个Java文件中可以写多个class,但只能有一个是public的,其他的class是缺省的。
- 默认的构造方法前面有没有访问修饰符跟定义的类有关,类是public的,默认的构造方法就是public,默认的类是缺省的,他的构造方法就是缺省的。
- JavaBean是指符合如下标准的Java类
- 类是公共的
- 有一个无参的构造方法
- 属性是私有的,且有对应的get、set方法。
继承
- 在Java中,继承的关键字用的extends,继承是对父类的扩展
- Java只支持但继承,不支持多继承。
- super
- super可用于访问父类中定义的属性,成员方法
- super可用于在子类构造方法中调用父类的构造器。
多态
- instanceof:检验某个对象是不是类A的子类
- true、true、false、true。
Object类
类型转换
equals
- 特殊的类,如String、File、Date,使用==比较的是对象的地址,equals比较的内容,除了特殊的类之外的其他普通的类的对象,==和equals比较的都是对象的地址。
String对象的创建
- 字面量创建对象的时候,只在常量池创建一个对象,new的时候,常量池有对象,对中也要有对象,字面量方法比new省内存。
包装类
- 使用包装进行数据转换,基本数据类型转换为字符串,字符串转换为基本数据类型。
接口
- 如果类没有实现接口的所有方法,这个类就要定义成抽象类。
- 接口与抽象类的区别?
- 接口是一类动作的集合。
- 抽象类是对于一类事务的高度抽象,其中既有属性也有方法,接口是对方法的抽象,也就是对一系列动作的抽象,当需要对一类事物抽象的时候,应该是使用抽象类,好形成一个父类,当需要对一系列动作抽象,就使用接口,需要使用这些动作的类去实现相应的接口即可。