您的位置:首页 > 职场人生

黑马程序员——Java基础---面向对象(构造方法和static关键字)

2016-06-05 00:26 686 查看
——Java培训、Android培训、iOS培训、UI培训、PHP培训、期待与您交流! ——

一、构造方法给成员变量赋值

1.格式

方法名与类名相同(大小也要与类名一致)

没有返回值类型,连void都没有

return;

2.注意事项

如果我们没有给出构造方法,系统将自动提供一个无参构造方法。

b:如果我们给出了构造方法,系统将不再提供默认的无参构造方法。

注意:这个时候,如果我们还想使用无参构造方法,就必须自己给出。建议永远自己给出无参构造方法。

3.给成员变量赋值的两种方式的区别

setXxx()方法

修改属性值

构造方法

给对象中属性进行初始化

4.创建一个对象的步骤

class Demo1_Student {
public static void main(String[] args) {
Student s = new Student();
s.show();
}
}

class Student {
private String name = "张三";
private int age = 23;

public Student() {
name = "李四";
age = 24;
}

public void show() {
System.out.println(name + "..." + age);
}
}


Student s = new Student();

1,Student.class加载进内存

2,声明一个Student类型引用s

3,在堆内存创建对象,

4,给对象中属性默认初始化值

5,属性进行显示初始化

6,构造方法进栈,对对象中的属性赋值,构造方法弹栈

7,将对象的地址值赋值给s

二、static关键字

1.static关键字的特点

随着类的加载而加载

优先于对象存在

被类的所有对象共享

可以通过类名调用

2.static的注意事项

在静态方法中是没有this关键字的

如何理解呢?

静态是随着类的加载而加载,this是随着对象的创建而存在。

静态比对象先存在。

静态方法只能访问静态的成员变量和静态的成员方法

静态方法:

成员变量:只能访问静态变量

成员方法:只能访问静态成员方法

非静态方法:

成员变量:可以是静态的,也可以是非静态的

成员方法:可是是静态的成员方法,也可以是非静态的成员方法。

简单记:

静态只能访问静态。

3.静态变量和成员变量的区别

静态变量也叫类变量 成员变量也叫对象变量

所属不同

静态变量属于类,所以也称为为类变量

成员变量属于对象,所以也称为实例变量(对象变量)

内存中位置不同

静态变量存储于方法区的静态区

成员变量存储于堆内存

内存出现时间不同

静态变量随着类的加载而加载,随着类的消失而消失

成员变量随着对象的创建而存在,随着对象的消失而消失

调用不同

静态变量可以通过类名调用,也可以通过对象调用

成员变量只能通过对 象名调用

4.main方法的格式详细解释

格式

public static void main(String[] args) {}

针对格式的解释

public 被jvm调用,访问权限足够大。

static 被jvm调用,不用创建对象,直接类名访问

void被jvm调用,不需要给jvm返回值

main 一个通用的名称,虽然不是关键字,但是被jvm识别

String[] args 以前用于接收键盘录入的

4.工具类中使用静态

制作一个工具类

ArrayTool

1,获取最大值

2,数组的遍历

3,数组的反转

public class ArrayTool {
private ArrayTool(){}//私有构造方法
public static int getMax(int[] arr) {
int max = arr[0];
for (int i = 1;i < arr.length ;i++ ) {
if (max < arr[i]) {
max = arr[i];
}
}

return max;
}
public static void print(int[] arr) {
for (int i = 0;i < arr.length ;i++ ) {
System.out.print(arr[i] + " ");
}
}
public static void revArray(int[] arr) {
for (int i = 0;i < arr.length / 2 ;i++ ) {
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
}
}


三、说明书的制作过程

1.对工具类加入文档注释

2.通过javadoc命令生成说明书

@author(提取作者内容)

@version(提取版本内容)

javadoc -d 指定的文件目录 -author -version ArrayTool.java

@param 参数名称//形式参数的变量名称@return 函数运行完返回的数据

——Java培训、Android培训、iOS培训、UI培训、PHP培训、期待与您交流! ——
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: