您的位置:首页 > 编程语言 > Java开发

java入门二 1、 类和对象

2016-01-25 22:10 246 查看
1-1什么是类和对象

对象:万物皆对象,客观存在的食物皆为对象

面向对象: 关注

人——>事物信息



属性——对象具有的各种特征(有什么)

每个对象的每个属性都拥有特定值

方法——对象执行的操作(能干什么)





1-2如何定义Java中的类

定义类

1、类的重要性:所有Java程序都以类class为组织单元

2、什么是类?【定义一个类时首字母要大写】

类是模子,确定对象将会拥有的特征(属性)和行为(方法)

3、类的组成:属性和方法

4、定义一个类的步骤 public class 类名{

a、定义类名 //定义属性部分(成员变量)

b、编写类的属性(一个多个或没有) 属性1的类型 属性1;

c.编写类的方法 (一个多个或没有) 属性2的类型 属性2;

...

属性n的类型 属性n;

//定义方法部分

方法1;

方法2;

...

方法m;

}




如何快捷输出System.out.println()

答:syso
+alt+'/'

1-3 如何使用Java中的对象

Java对象

使用对象的步骤:

1、创建对象:类名 对象名
=new 类名();

Telphone phone = new Telphone();

2、使用对象

引用对象的属性:对象名.属性

phone.screen = 5; //给screen属性赋值5

引用对象的方法:对象名.方法名()

phone.sendMessage();//调用sendMessage()方法

【float型变量赋值时需加F,否则默认浮点数是double型】

再创建一个类,记得点选main





1-5 Java成员中的成员变量和局部变量

1、成员变量

在类中定义,用来描述对象将要有什么。

2、局部变量

在类的方法中定义,在方法中临时保存数据。



成员变量和局部变量区别

1、作用域不同

局部变量的作用域仅限于定义它的方法

成员变量的作用域在整个类内部都是可见的



2、初始值不同

Java会给成员变量一个初始值

Java不会给局部变量一个初始值

3、在同一个方法中,不允许有同名局部变量;

在不同的方法中,可以由同名局部变量

4、两类变量同名时,局部变量具有更高的优先级(就近原则)

1-6Java中的构造方法

构造方法

1、使用new+构造方法 创建一个新的对象

2、构造方法是定义在Java类中的一个用来初始化对象的方法

构造方法与类同名且没有返回值



3、无参方法的使用





实例:定义一个类(属性、方法)



下面调用上面,创建对象



5、当没有指定构造方法时,系统会自动添加无参的构造方法

6、当有指定构造方法,无论是有参、无参的构造方法,都不会自动添加无参的构造方法。

7、构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法

8、构造方法不但可以给对象的属性赋值,还可以保证给对象的属性赋一个合理的值

eg: if(newScreen<3.5f){

System.out.println("您输入的参数有问题,自动赋值3.5");

screen = 3.5f;

}else{

screen=newScreen;

}


1-7 Java 中的 static 使用之静态变量

大家都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立。然而在某些时候,我们更希望该类所有的对象共享同一个成员。此时就是 static 大显身手的时候了!!

Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。静态成员可以使用类名直接访问,也可以使用对象名进行访问。当然,鉴于他作用的特殊性更推荐用类名访问~~

使用 static 可以修饰变量、方法和代码块。

本小节,我们先认识一下静态变量。

例如,我们在类中定义了一个 静态变量 hobby ,操作代码如下所示:





运行结果:



要注意哦:静态成员属于整个类,当系统第一次使用该类时,就会为其分配内存空间直到该类被卸载才会进行资源回收!~~


任务

在编辑器中定义了一个 HelloWorld 类,在类中定义一个静态变量 className ,保存班级名称。在 main 方法中调用静态变量输出班级信息。

请将第 4、9 行中代码补充完整

运行结果: JAVA开发一班


Java 中的 static 使用之静态方法

与静态变量一样,我们也可以使用 static 修饰方法,称为静态方法或类方法。其实之前我们一直写的 main 方法就是静态方法。静态方法的使用如:





运行结果:



需要注意:

1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。如:





如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。如:





2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量,如下所示:





3、 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。如:






任务

在编辑器中分别定义了两个静态变量 score1 和 score2 ,用于保存成绩信息。定义了一个静态方法 sum ,用于计算成绩总分,在 main 方法中通过调用静态方法输出成绩总分

请根据注释,将第 6、9、10、18 行代码补充完整

运行结果: 总分:178


1-10 Java 中的 static 使用之静态初始化块

Java 中可以通过初始化块进行数据赋值。如:





在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。

需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量

我们来看一段代码:





运行结果:





通过输出结果,我们可以看到,程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。


任务

小伙伴们,做个练习加深对静态初始化块的理解吧!

在编辑器中,分别通过构造方法、初始化块和静态初始化块对变量进行初始化赋值。

将第 8、20、34 行中代码补充完整

参考运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: