初始化与清理(1)
来源:互联网 发布:windows操作系统书籍 编辑:程序博客网 时间:2024/05/20 22:26
用构造器确保初始化
- 构造器的名称必须与类名完全相同。
- 类的构造器相当于一个创建对象时执行的方法,当不写构造器的时候,会默认为类提供一个无参构造器。
- 当写了一个有参数的构造器的时候,无参构造器便不会默认提供了,如果有需要的话,还是要再写。
class Rock { //无参构造器 Rock(){} //有参数构造方法 Rock(String str) { //这相当于调用了上面的无参数构造器,构造器之间可以互相调用,不过要再构造器方法中的第一行代码中调用,并且要避免死循环。这里面也涉及到了方法重载,后面再说。 this(); System.out.println(str); }}
方法重载
所谓方法重载,也就是有多个方法,但是方法之间的名称相同,但是参数不一样,也是为了让同个方法表示不同的意义。
class Tree { int height; public void info() { System.out.println("this tree's height is"+this.height); } public void info(int height) { System.out.println("this tree's height is"+height); }}
区分重载方法
每个重载的方法都必须有一个独一无二的参数类型列表,要么是个数不一样,要么是同顺序的参数的类型不一样。不能用返回类型区分重载的方法。因为如果参数列表也一样的话,调用方法的时候, 编译器无法判断你调用的到底你哪个方法。
涉及基本类型的重载
基本类型能从一个较小的类型自动提升至一个较大的类型。
class PrimitiveOverloading { void f(byte x) { System.out.println("byte"); } void f(int x) { System.out.println("int"); } void f(double x) { System.out.println("double"); } public void static main(String[] args) { //结果:int;因为直接整形数默认为int,所以调用的是第二个方法,当没有第二个方法的时候,会向上提升,这时结果就会是double; f(1); //结果:byte; f((byte)1); }}
this关键字
this的就是这个的意思,指的是当前对象。
public class Apple { int weight; public void setWeight(int weight) { //这里指的当前对象的weight属性 this.weight=weight; } public void provide() { //把当前对象的引用作为参数使用 Animal.eat(this); }}
static的含义
在static方法的内部不能调用非静态方法,反过来可以。因为static方法很像全局方法,static方法不算“面向对象”的。
0 0
- 初始化与清理(1)
- 初始化与清理之二(清理)
- 初始化与清理(2)
- 初始化与清理(3)
- 【Java编程思想】(1)初始化与清理
- 初始化与清理之一 (初始化)
- 练习代码(一)初始化与清理
- 学习笔记(一)初始化与清理
- 第五章 初始化与清理(上)
- 第五章 初始化与清理(下)
- Java基础知识整理(初始化与清理)
- 初始化与清理
- CH5 初始化与清理
- 4.初始化与清理
- 初始化与清理
- Java初始化与清理
- 初始化与清理
- 初始化与清理
- 动态创建标记
- iOS开发Debug之去掉tableView的headerview的粘性
- Edison 与 Android 手机蓝牙通信SPP(SERIAL PORT PROFILE)
- 【Android开发】Android跨进程通讯(AIDL)官方文档及官方Demo讲解
- UVA 208(p214)----Firetruck
- 初始化与清理(1)
- Less函数说明
- java简单算法循环
- Cpp_引用
- Servlet_01_介绍
- Android MediaCodec学习
- java中获取类加载路径和项目根路径的5种方式分析
- ArcGIS二次开发之读取遥感图像像素值的做法
- javascript在IE下遇到的中文乱码与缓存问题