Java SE基础知识点总结(四)
来源:互联网 发布:淘宝所有订单不全 编辑:程序博客网 时间:2024/06/01 10:38
- 构造方法一般用于初始化对象,为正在创建的成员变量赋初值。
- 创建对象时一定会调用一个构造方法,如果没有写构造方法则编译器会为类加上一个默认的构造方法。
- 构造方法中的this:访问对象属性、访问实例方法、调用重载的其他的构造方法(只能位于第一行,不会触发新对象的创建)
- StringBuffer与StringBuider的区别:前者是线程安全的,后者性能较高。
- ==比较的是地址(两个不同对象相同赋值也不等),equals比较的对象的值。
Integer i=100;//自动装箱 int i = new Integer(100);//自动拆箱 需要注意的:boolean类型的值,所有byte类型的值,short、int->(-128,127),在 \u0000-\u007F之间的char类型的值。 为什么要用封装类型? 类的封装性,保持本对象的数据的隐藏,防止其被其他对象破坏。 某些情况,数据必须作为对象出现,必须要用封装类。 某些情况,封装后可以更加方便的操作数据,比如:Integer的shortValue(),longValue(),intValue()等。
static:
- 不可用于修饰构造方法
- 静态变量和静态方法被类的的每一个对象公用
- 静态变量和静态方法是在程序运行时分配内存的,直到程序运行结束才会销毁 静态方法中不能出现”this”和”super”
- 程序运行时,先执行静态代码块,在类加载的时候执行并只执行一次 静态代码块在类中的顺序就是执行顺序(向下覆盖)
继承:
- 面向对象编程的特征之一
- 父类的构造函数不会被继承
- 在子类里新建父类的对象,此时该对象只能调用父类的public变量和方法
创造子类对象时,会先按照其父类的信息开辟空间,然后如果有新增的属性或者方法,再继续分配 - 使用super关键字显示调用父类的构造方法(必须写在第一行),不能和this同时出现
- 子类重写父类的方法会形成覆盖,覆盖的方法的访问权限不能比父类更严格(级别小),覆盖的行为不能比父类抛出更多异常
抽象类:
- 使用abstract声明的类,类中包括一个或多个抽象方法就必须指定为抽象类,抽象方法属于不完整的方法,只有声明,没有方法主体(由继承该类的子类重写来实现)
- 抽象类不能直接被实例化
- 抽象类可以继承抽象类也可以继承普通类,抽象类可以实现接口
- 继承了抽象类的普通类必须写出抽象类内部所有的抽象方法
- 继承了抽象类的抽象类就不用写出所有抽象方法,继承类也是抽象类,因此也不能被实例化
- 抽象类可以创建引用类型变量,用于指向其子类的对象
为什么要使用抽象类?
1.如果一个类中没有包含足够的信息来描绘一个具体的对象
2.进行类型隐藏,表现为一组行为的抽象描述,这一组任意个可能的具体实现方式则表现为所有可能的派生类
3.作为一系列函数的容器存在
接口:
- 接口是一个特殊的抽象类 做到尽量简单,达到松耦合效果
- 普通类和抽象类都可以实现接口,一个类可以继承的同时实现多个接口,一个接口可以被多个类实现,接口还可以创建引用类型变量
- 抽象类是提取子类的公共代码,接口是类遵循接口协议对类进行的扩展**
0 0
- Java SE基础知识点总结(四)
- Java SE基础知识点总结(一)
- Java SE基础知识点总结(二)
- Java SE基础知识点总结(三)
- Java SE基础知识点总结(五)
- Java SE基础知识点总结(六)
- java se 知识点 总结
- Java基础知识点总结四
- java基础知识点总结(四)
- java SE基础知识点总结(01):编程环境的搭建
- Java知识点总结(四)
- java se 知识点(一)
- java SE基础(输入输出总结)
- JAVA SE重点知识点串讲总结_panfanglin
- C++基础知识点总结四
- java SE 集合(四)
- java基础总结知识点
- java基础知识点总结
- hdu1172猜数字
- Is it Google Hacking? It's Google Dorking
- 生成随机数方法
- 操作系统面试知识点总结
- seq2seq模型
- Java SE基础知识点总结(四)
- Bitmap使用容易被忽略的一个小问题点
- linux 上安装桥接(CentOs7)
- c 中使用 ftruncate() 前需要 fflush(), 使用后需要 rewind()
- 如何构建一个深度的RNN
- Convert Value type to Map in Golang
- 周易六十四卦——遁卦
- Service简析
- 项目架构